OpenBIOS
wikidb
https://openfirmware.info/Welcome_to_OpenBIOS
MediaWiki 1.40.0
first-letter
Media
Special
Talk
User
User talk
OpenBIOS
OpenBIOS talk
File
File talk
MediaWiki
MediaWiki talk
Template
Template talk
Help
Help talk
Category
Category talk
Welcome to OpenBIOS
0
2
2
2006-10-05T21:34:10Z
MediaWiki default
0
wikitext
text/x-wiki
<big>'''MediaWiki has been successfully installed.'''</big>
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.
== Getting started ==
* [http://www.mediawiki.org/wiki/Help:Configuration_settings Configuration settings list]
* [http://www.mediawiki.org/wiki/Help:FAQ MediaWiki FAQ]
* [http://mail.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]
928e1deea259c70afc3513c66f29f3fcd740d8bf
3
2
2006-10-05T22:29:09Z
WikiSysop
1
[[Main Page]] moved to [[Welcome to OpenBIOS]]
wikitext
text/x-wiki
<big>'''MediaWiki has been successfully installed.'''</big>
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.
== Getting started ==
* [http://www.mediawiki.org/wiki/Help:Configuration_settings Configuration settings list]
* [http://www.mediawiki.org/wiki/Help:FAQ MediaWiki FAQ]
* [http://mail.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]
928e1deea259c70afc3513c66f29f3fcd740d8bf
4
3
2006-10-05T22:30:38Z
WikiSysop
1
/* Getting started */
wikitext
text/x-wiki
<big>'''MediaWiki has been successfully installed.'''</big>
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.
b9fc4428e0354a8f851a29a336cfc85d5cc42ebc
5
4
2006-10-05T22:31:10Z
WikiSysop
1
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
a54398666e23503c84fecb0e9683126242b3ff18
6
5
2006-10-05T23:04:53Z
Stepan
2
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
= News =
New web page
= Progress =
OpenBIOS is progressing quickly. See the development download page or the progress page for the latest overview information on how complete OpenBIOS is now.
= Contact =
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the mailinglist page
= Project Statement =
Our project statement contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
= Credits =
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing credits page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
2df40efee837bcd49e122582c03babd1000ea59b
7
6
2006-10-05T23:05:38Z
Stepan
2
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
New web page
== Progress ==
OpenBIOS is progressing quickly. See the development download page or the progress page for the latest overview information on how complete OpenBIOS is now.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the mailinglist page
== Project Statement ==
Our project statement contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing credits page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
3e3ee5dc56dc4d3a85701425aca58f3fb4860e9a
8
7
2006-10-05T23:10:55Z
Stepan
2
/* News */
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
== Progress ==
OpenBIOS is progressing quickly. See the development download page or the progress page for the latest overview information on how complete OpenBIOS is now.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the mailinglist page
== Project Statement ==
Our project statement contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing credits page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
d9b1e84dba2b02e5d01addff133b2f71be59f0e2
9
8
2006-10-05T23:26:16Z
Stepan
2
/* Project Statement */
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
== Progress ==
OpenBIOS is progressing quickly. See the development download page or the progress page for the latest overview information on how complete OpenBIOS is now.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the mailinglist page
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing credits page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
8f463bbb62f1f068bbb0e91ff9784b4a94088e47
10
9
2006-10-05T23:26:36Z
Stepan
2
/* Credits */
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
== Progress ==
OpenBIOS is progressing quickly. See the development download page or the progress page for the latest overview information on how complete OpenBIOS is now.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the mailinglist page
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
564abf41289ab156354b57fa61bfa2e2ad48bfb8
11
10
2006-10-05T23:27:17Z
Stepan
2
/* Contact */
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
== Progress ==
OpenBIOS is progressing quickly. See the development download page or the progress page for the latest overview information on how complete OpenBIOS is now.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
d97a0fb0fe5d463684b9de157dabc7d369fe8b7b
MediaWiki:Anontalkpagetext
8
3
48
2006-10-05T21:34:10Z
MediaWiki default
0
wikitext
text/x-wiki
----''This is the discussion page for an anonymous user who has not created an account yet or who does not use it. We therefore have to use the numerical IP address to identify him/her. Such an IP address can be shared by several users. If you are an anonymous user and feel that irrelevant comments have been directed at you, please [[Special:Userlogin|create an account or log in]] to avoid future confusion with other anonymous users.''
ea431c1f100d302a470f476039f9038a69a23ee2
MediaWiki:Mainpage
8
4
50
2006-10-05T21:34:11Z
MediaWiki default
0
wikitext
text/x-wiki
Main Page
29b077bd4b72e57c6500fdd2d77e1a8b60f2816b
51
50
2006-10-05T22:30:19Z
WikiSysop
1
wikitext
text/x-wiki
Welcome to OpenBIOS
2ccf812f9eeac3a7917f561320ef9c3e0667075e
MediaWiki:Nocreatetext
8
5
52
2006-10-05T21:34:11Z
MediaWiki default
0
wikitext
text/x-wiki
This site has restricted the ability to create new pages.
You can go back and edit an existing page, or [[Special:Userlogin|log in or create an account]].
a004d441072b245647523ce53acc3aab036170ce
MediaWiki:Nosuchuser
8
6
54
2006-10-05T21:34:11Z
MediaWiki default
0
wikitext
text/x-wiki
There is no user by the name "$1". Check your spelling, or create a new account.
ebdc8540c9b06b677426238354387441d172491a
MediaWiki:Sidebar
8
7
56
2006-10-05T21:34:12Z
MediaWiki default
0
wikitext
text/x-wiki
* navigation
** mainpage|mainpage
** portal-url|portal
** currentevents-url|currentevents
** recentchanges-url|recentchanges
** randompage-url|randompage
** helppage|help
** sitesupport-url|sitesupport
af994abf1e4155349addb7f6e4b390a529f7606d
57
56
2006-10-05T22:35:10Z
WikiSysop
1
wikitext
text/x-wiki
* navigation
** mainpage|mainpage
** Documentation|Documentation
** Mailinlist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** License|License
** Downloads|Downloads
** Development
** currentevents-url|currentevents
** recentchanges-url|recentchanges
28448b0f6a1e4a0b069dd5d8d4d4a1f45d31368f
58
57
2006-10-05T22:59:20Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement
** Credits
** License
* Experience
** Progress
** Milestones
** Issues
** Releases
** Downloads
* Development
** Environment
** Tools
*** Detokenizer
*** Tokenizer
** FCODE suite
** Kernel
** Flashing
* Documentation
** OpenFirmware
** Forth/FCode
** On the Net
* Wiki
** currentevents-url|currentevents
** recentchanges-url|recentchanges
599aee6e585a8d9a22f0d0f74d33126e5432f160
59
58
2006-10-05T23:02:05Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** License|License
* Experience
** Progress
** Milestones
** Issues
** Releases
** Downloads|Downloads
* Development
** Environment
** Tools
*** Detokenizer
*** Tokenizer
** FCODE suite|FCODE suite
** Kernel
** Flashing
* Documentation
** OpenFirmware|OpenFirmware
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** currentevents-url|currentevents
** recentchanges-url|recentchanges
fbb0eea3656d18083a19f3a75946abf5abd6bbdb
MediaWiki:Userlogin
8
8
76
2006-10-05T21:34:12Z
MediaWiki default
0
wikitext
text/x-wiki
Log in / create account
ad8aeb25b80687887db4fdd4596b493cc22da2cc
Main Page
0
9
78
2006-10-05T22:29:09Z
WikiSysop
1
[[Main Page]] moved to [[Welcome to OpenBIOS]]
wikitext
text/x-wiki
#REDIRECT [[Welcome to OpenBIOS]]
37810046dc3dac22d8ec3227d829965f27bf9694
Contact us
0
10
79
2006-10-05T23:12:27Z
Stepan
2
wikitext
text/x-wiki
== The OpenBIOS Project ==
OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, documentation.
* need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this.
We of course appreciate any help, hints, patches, comments, etc.
NOTE: Please read our project statement.
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the OpenBIOS mailing list. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on irc.freenode.net in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, firmware and related topics are welcome.
5340ff0be636a025139d16f20e6bfee7d2f01dd5
80
79
2006-10-05T23:12:40Z
Stepan
2
/* The OpenBIOS Project */
wikitext
text/x-wiki
== The OpenBIOS Project ==
OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, documentation.
* need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this.
We of course appreciate any help, hints, patches, comments, etc.
NOTE: Please read our project statement.
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the OpenBIOS mailing list. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on irc.freenode.net in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, firmware and related topics are welcome.
07fe5f369416eba2dcdbcf9c46c9895a742b2be4
81
80
2006-10-05T23:35:48Z
Stepan
2
/* The OpenBIOS Project */
wikitext
text/x-wiki
== The OpenBIOS Project ==
OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, documentation.
* need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this.
We of course appreciate any help, hints, patches, comments, etc.
NOTE: Please read our [[Project Statement]].
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the OpenBIOS mailing list. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on irc.freenode.net in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, firmware and related topics are welcome.
6c557b2978e6a7110bcbc0ae29ffaf725c371948
82
81
2006-10-05T23:36:50Z
Stepan
2
/* Mailinglist */
wikitext
text/x-wiki
== The OpenBIOS Project ==
OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, documentation.
* need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this.
We of course appreciate any help, hints, patches, comments, etc.
NOTE: Please read our [[Project Statement]].
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the OpenBIOS [[mailinglist|mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on irc.freenode.net in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, firmware and related topics are welcome.
bfdf3a946eacbd28a81400bb0bedb330f1f52476
83
82
2006-10-05T23:37:54Z
Stepan
2
/* Internet Relay Chat */
wikitext
text/x-wiki
== The OpenBIOS Project ==
OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, documentation.
* need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this.
We of course appreciate any help, hints, patches, comments, etc.
NOTE: Please read our [[Project Statement]].
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the OpenBIOS [[mailinglist|mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, firmware and related topics are welcome.
6b42984a6726a1891654000bd7f40058d1138d5d
84
83
2006-10-05T23:38:18Z
Stepan
2
/* Internet Relay Chat */
wikitext
text/x-wiki
== The OpenBIOS Project ==
OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, documentation.
* need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this.
We of course appreciate any help, hints, patches, comments, etc.
NOTE: Please read our [[Project Statement]].
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the OpenBIOS [[mailinglist|mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome.
15432da499d9522f6988b7c90f6730324fc72dee
Mailinglist
0
11
93
2006-10-05T23:13:55Z
Stepan
2
wikitext
text/x-wiki
For questions and general information about LinuxBIOS, subscribe to the LinuxBIOS mailing list, at:
* http://www.linuxbios.org/mailman/listinfo/linuxbios
A mailing list archive dating back as far as August 2002 can be found at:
* http://www.linuxbios.org/pipermail/linuxbios/
02f4efc450f7fdfe79497ca9a8073fbcc01f5bad
94
93
2006-10-05T23:14:24Z
Stepan
2
wikitext
text/x-wiki
For questions and general information about LinuxBIOS, subscribe to the LinuxBIOS mailing list, at:
* http://www.openbios.org/mailman/listinfo/openbios
A mailing list archive dating back as far as August 2002 can be found at:
* http://www.openbios.org/pipermail/openbios
15868b6e673d28a7c5bee732392244acdc586e1e
95
94
2006-10-05T23:15:31Z
Stepan
2
wikitext
text/x-wiki
The OpenBIOS project currently has one mailing list which is intended for development, informational and general project purposes. You can subscribe to the OpenBIOS mailing list via a web interface or with a simple email (un-)subscription mechanism.
For questions and general information about OpenBIOS, subscribe to the OpenBIOS mailing list, at:
* http://www.openbios.org/mailman/listinfo/openbios
A mailing list archive dating back as far as February 1998 can be found at:
* http://www.openbios.org/pipermail/openbios
bf371dde8a9bb241371a2370b20033127ae268a6
Code of Conduct
0
12
97
2006-10-05T23:17:37Z
Stepan
2
wikitext
text/x-wiki
Dear OpenBIOS project members and other interested parties,
For the ease of development and for information on what can be expected from this project we want to set down the following ground rules in order to achieve a high quality implementation of our project objectives.
1. The objective of this project is to develop a free, open source, architecture independant firmware implementation following, if possible, the IEEE Standard for Boot (Initialization Configuration) Firmware (IEEE 1275-1994). Including not only the implementation of the standard itself but also the required toolkit consisting of a C to FCode compiler, an FCode tokenizer and an FCode detokenizer. This toolkit will simplify driver and API development implementing ANSI C as the development language instead of implementing Forth/FCode directly as suggested by the IEEE standard.
2. We cannot allow _any_ discussion or use of _any_ copyrighted, patented, or otherwise protected Firmware or BIOS implementations without an OSI approved license in this project or on the mailing list associated with this project. All members of this project and/or the according mailing lists agree to not disclose or use any copyrighted, patented, or otherwise protected information, ideas or concepts.
3. We do not intend to implement any of the ideas or concepts expressed in the current Intel 32bit architechture, except when these are necessary to insure the compatability with existing hardware. Such ideas and concepts will only be used if such use is not restricted by _any_ laws, copyrights or patents.
4. In order to assure truly universal implementation and/or optimize the functionality and performance it is our expressed wish to work in conjunction with other open source (firmware) projects, such as LinuxBIOS or U-Boot.
5. Cooperation with hardware vendors is necessary to implement this project on an architecture-independent basis. In certain cases this may include signing non-disclosure agreements with the aforementioned hardware vendors in an attempt to acquire hardware specific information or support that may not otherwise be available although the results of such cooperation must be freely redistributable.
6. Cooperation with any university, research project, or organization is desired except in such cases where the resulting information is restricted in use or redistributability.
If, for whatever reasons, any of the above statements are unacceptable or seem to be incorrect or unclear in _any_ way please do not hesitate to discuss this matter on the mailing list, we are open for suggestions. This is simply an attempt to assure the legal status of this project, protecting those involved from legal prosecution as well as to state the general objectives of the project.
OpenBIOS development team.
1d3ac3c0e6df55f959e72052405fa96b90e52e52
Credits
0
13
100
2006-10-05T23:20:17Z
Stepan
2
wikitext
text/x-wiki
Development contributions
Development contributions
* Stefan Reinauer (project coordination, main development)
* Patrick Mauritz (initial kernel work)
* Samuel Rydh (forth interfaces, MOL port, ...)
* Greg Watson (briq port)
* David Paktor (improving Toke)
* Chen-Chau Chu (ppc fixes)
* Tim Barrett (detok patches)
* Krishna Myneni (permission to include kForth examples with toke)
Hardware/Funding
* Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development.
* LinuxFund.org chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work!
* Newisys funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openbios.org and www.linuxbios.org.
If you or somebody else is missing on this list, send an email to Stefan Reinauer
1acf89a52f7e1c582e1c5e4dd945fe08516c6655
101
100
2006-10-05T23:39:51Z
Stepan
2
wikitext
text/x-wiki
Development contributions
Development contributions
* Stefan Reinauer (project coordination, main development)
* Patrick Mauritz (initial kernel work)
* Samuel Rydh (forth interfaces, MOL port, ...)
* Greg Watson (briq port)
* David Paktor (improving Toke)
* Chen-Chau Chu (ppc fixes)
* Tim Barrett (detok patches)
* Krishna Myneni (permission to include kForth examples with toke)
Hardware/Funding
* Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development.
* [http://www.linuxfund.org/ LinuxFund.org] chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work!
* [http://www.newisys.com/ Newisys] funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openbios.org and www.linuxbios.org.
If you or somebody else is missing on this list, send an email to Stefan Reinauer
679795e23af566da501ca040f73f434df41148f3
Licensing
0
14
107
2006-10-05T23:21:22Z
Stepan
2
wikitext
text/x-wiki
= OpenBIOS Licensing =
OpenBIOS is licensed under the GNU General Public License v2. If you adapt OpenBIOS to your needs, please contact us with your changes so that you can contribute your changes back to the community.
= Why GPL? =
We see the GPL giving OpenBIOS a big competitive advantage over other firmware solutions:
* As a hardware vendor you get the warranty that nobody hiddenly improves the code you have been contributing without giving those improvements back. Thus, GPL guarantees that you keep control over your work and contributions.
* End users / customers get great benefit from OpenBIOS being GPL licensed: The GPL insures customers that a given platform will act like all other OpenBIOS platforms. BSD is a negative marketing point where BIOS is concerned.
= View the license =
Have a look at the complete license
b602b654e413058112896cc05b5debef95ebde42
IEEE 1275-1994
0
15
112
2006-10-05T23:25:41Z
Stepan
2
wikitext
text/x-wiki
After 5 years the IEEE 1275-1994 standard got withdrawn by the IEEE Standards Association. This does by no means implicate that this standard is abandoned or dead. There are several commercial implementations of Open Firmware and a quite reasonable number of hardware vendors support it. IEEE sold it to Global Engineering who still offer it.
To Contact Global Engineering, use Phone: 1-800-854-7179, Fax: 303-397-2740. Out side the U.S. call 303-792-2181. You can also purchase the IEEE 1275-1994 document online from the Global Engineering website.
To get started with OpenBIOS, download the IEEE 1275-1994, Standard for Boot (Initialization Configuration) Firmware Core Requirements and Practices. You can get the document from our local mirror or from the IEEE 1275-1994 ftp archive at sun.com.
For more information on IEEE 1275 Open Firmware, we recommend you browse the IEEE Standard 1275 Working Group's Home Page. There you will find general information and official minutes of the Working Group.
The Open Firmware standard is the elementary base of OpenBIOS. Any questions are welcome, please contact Stefan Reinauer or the OpenBIOS Mailinglist.
f43166ecd487463305222d268f5f71b90367c255
OpenBIOS
0
16
117
2006-10-05T23:41:56Z
Stepan
2
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the OpenBIOS issue tracker for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the OpenBIOS download page to get a development snapshot of OpenBIOS.
For information on the different OpenBIOS parts, have a look at the OpenBIOS progress page.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: OpenBIOS 0.99.1 (2004-11-09)
Development Environment
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the FCode Suite page (2006-08-08)
== detok ==
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
== toke ==
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
== kernel ==
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
c08fd49b7d2b7e8b7730a56a736285b32f4da32d
118
117
2006-10-05T23:43:46Z
Stepan
2
/* OpenBIOS - Code Releases */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
For information on the different OpenBIOS parts, have a look at the OpenBIOS progress page.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: OpenBIOS 0.99.1 (2004-11-09)
Development Environment
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the FCode Suite page (2006-08-08)
== detok ==
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
== toke ==
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
== kernel ==
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
21f366d5bc76223581bf656b8cb2a8132dc7a471
119
118
2006-10-05T23:44:07Z
Stepan
2
/* OpenBIOS - Code Releases */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: OpenBIOS 0.99.1 (2004-11-09)
Development Environment
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the FCode Suite page (2006-08-08)
== detok ==
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
== toke ==
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
== kernel ==
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
5e1264afc187ea73e7506ae4793fbdfce0eecddd
120
119
2006-10-05T23:44:46Z
Stepan
2
/* OpenBIOS */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: OpenBIOS 0.99.1 (2004-11-09)
== Development Environment ==
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the FCode Suite page (2006-08-08)
== detok ==
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
== toke ==
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
== kernel ==
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
e450828184e16adea9f827c843bf609faeb4fa45
121
120
2006-10-05T23:45:01Z
Stepan
2
/* FCode Suite */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: OpenBIOS 0.99.1 (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the FCode Suite page (2006-08-08)
== detok ==
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
== toke ==
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
== kernel ==
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
b2a1c0ae38d9c664db8f622cef42dd6f68b66261
122
121
2006-10-05T23:45:12Z
Stepan
2
/* detok */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: OpenBIOS 0.99.1 (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the FCode Suite page (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
== toke ==
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
== kernel ==
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
c206dd80cc8373b5d0e56e56a0c82042c1c96e9b
123
122
2006-10-05T23:45:29Z
Stepan
2
/* toke */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: OpenBIOS 0.99.1 (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the FCode Suite page (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
== kernel ==
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
5d732389d0b71b345e34df146f09a5ba1697d28e
124
123
2006-10-05T23:45:39Z
Stepan
2
/* kernel */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: OpenBIOS 0.99.1 (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the FCode Suite page (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
31fae4f44ca17bdc60e421bdac254f72161a2a6d
125
124
2006-10-05T23:46:01Z
Stepan
2
/* detok */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: OpenBIOS 0.99.1 (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the FCode Suite page (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
b960a83ef2337f300fdd19cad8fa179736750884
126
125
2006-10-05T23:46:11Z
Stepan
2
/* toke */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: OpenBIOS 0.99.1 (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the FCode Suite page (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
d76e0711b609707cc1468f07f34ac871820ec782
127
126
2006-10-05T23:46:22Z
Stepan
2
/* kernel */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: OpenBIOS 0.99.1 (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the FCode Suite page (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
77e8812814a59233cd4efeccb4a977c95103ff57
FCODE suite
0
17
197
2006-10-05T23:47:28Z
Stepan
2
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
Downloading the OpenBIOS FCode Suite?
* Modified Sources and Makefiles
Available as a Tar-File: TokzrNewSrcFiles.tar.bz2
* User's Guide documents
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the New Features of the Tokenizer,
* the Detokenizer, and
* the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: Documents.tar.bz2
* Executable binaries for three platforms
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility.
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: Binaries.tar.bz2
* Includ-able tokenizer-source files for Local Values Support (explained in one of the User's Guide documents)
Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
Unit-Test Suite
* The suite of unit-test cases
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
* The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
Unit-Test Suite Logs
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the X86/Cygwin platform
Available as a Tar-File: X86_Cygwin_TestLog.tar.bz2
* The results from a run of the Unit-Test Suite on the Power-PC/Linux platform
Available as a Tar-File: PPC_GNU_Linux_TestLog.tar.bz2
* The results from a run of the Unit-Test Suite on the Power-PC/AIX platform
Available as a Tar-File: PPC_AIX_TestLog.tar.bz2
d575018d9dc846bc5fd8856c209ab104574b8b10
198
197
2006-10-05T23:49:04Z
Stepan
2
/* What is the OpenBIOS FCODE Suite? */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite? ==
* Modified Sources and Makefiles
Available as a Tar-File: TokzrNewSrcFiles.tar.bz2
* User's Guide documents
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the New Features of the Tokenizer,
* the Detokenizer, and
* the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: Documents.tar.bz2
* Executable binaries for three platforms
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility.
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: Binaries.tar.bz2
* Includ-able tokenizer-source files for Local Values Support (explained in
one of the User's Guide documents)
Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
* The suite of unit-test cases
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
* The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the X86/Cygwin platform
Available as a Tar-File: X86_Cygwin_TestLog.tar.bz2
* The results from a run of the Unit-Test Suite on the Power-PC/Linux platform
Available as a Tar-File: PPC_GNU_Linux_TestLog.tar.bz2
* The results from a run of the Unit-Test Suite on the Power-PC/AIX platform
Available as a Tar-File: PPC_AIX_TestLog.tar.bz2
9ccb49b9bb99e739ef7e62e088db71a98585121c
199
198
2006-10-05T23:51:52Z
Stepan
2
/* Unit-Test Suite Logs */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite? ==
* Modified Sources and Makefiles
Available as a Tar-File: TokzrNewSrcFiles.tar.bz2
* User's Guide documents
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the New Features of the Tokenizer,
* the Detokenizer, and
* the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: Documents.tar.bz2
* Executable binaries for three platforms
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility.
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: Binaries.tar.bz2
* Includ-able tokenizer-source files for Local Values Support (explained in
one of the User's Guide documents)
Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
* The suite of unit-test cases
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
* The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the Power-PC/Linux platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the Power-PC/AIX platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
408bf0f2fa07e34563224b77e0f6c468980655d1
200
199
2006-10-05T23:52:08Z
Stepan
2
/* Unit-Test Suite Logs */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite? ==
* Modified Sources and Makefiles
Available as a Tar-File: TokzrNewSrcFiles.tar.bz2
* User's Guide documents
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the New Features of the Tokenizer,
* the Detokenizer, and
* the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: Documents.tar.bz2
* Executable binaries for three platforms
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility.
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: Binaries.tar.bz2
* Includ-able tokenizer-source files for Local Values Support (explained in
one of the User's Guide documents)
Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
* The suite of unit-test cases
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
* The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the Power-PC/Linux platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the Power-PC/AIX platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
934e4ce03d8b07026ccfdcf6fd52380314dec7cd
FCODE suite
0
17
201
200
2006-10-05T23:52:52Z
Stepan
2
/* Unit-Test Suite Logs */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite? ==
* Modified Sources and Makefiles
Available as a Tar-File: TokzrNewSrcFiles.tar.bz2
* User's Guide documents
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the New Features of the Tokenizer,
* the Detokenizer, and
* the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: Documents.tar.bz2
* Executable binaries for three platforms
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility.
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: Binaries.tar.bz2
* Includ-able tokenizer-source files for Local Values Support (explained in
one of the User's Guide documents)
Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
* The suite of unit-test cases
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
* The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
0aefaabdabd08a53bba97f6d50dc27cec2c88e6b
202
201
2006-10-05T23:53:41Z
Stepan
2
/* Unit-Test Suite */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite? ==
* Modified Sources and Makefiles
Available as a Tar-File: TokzrNewSrcFiles.tar.bz2
* User's Guide documents
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the New Features of the Tokenizer,
* the Detokenizer, and
* the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: Documents.tar.bz2
* Executable binaries for three platforms
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility.
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: Binaries.tar.bz2
* Includ-able tokenizer-source files for Local Values Support (explained in
one of the User's Guide documents)
Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
* The suite of unit-test cases
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
* The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
bc724b6b289f4bacc4fd0660899a87ed3dcd9d17
203
202
2006-10-05T23:54:24Z
Stepan
2
/* Unit-Test Suite */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite? ==
* Modified Sources and Makefiles
Available as a Tar-File: TokzrNewSrcFiles.tar.bz2
* User's Guide documents
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the New Features of the Tokenizer,
* the Detokenizer, and
* the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: Documents.tar.bz2
* Executable binaries for three platforms
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility.
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: Binaries.tar.bz2
* Includ-able tokenizer-source files for Local Values Support (explained in
one of the User's Guide documents)
Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
05be658be4c78f066c14107ba92270905fd82b85
204
203
2006-10-05T23:56:13Z
Stepan
2
/* Downloading the OpenBIOS FCode Suite? */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite? ==
* Modified Sources and Makefiles. Available as a Tar-File: TokzrNewSrcFiles.tar.bz2
* User's Guide documents
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the New Features of the Tokenizer,
* the Detokenizer, and
* the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: Documents.tar.bz2
* Executable binaries for three platforms
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility.
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: Binaries.tar.bz2
* Includ-able tokenizer-source files for Local Values Support (explained in
one of the User's Guide documents)
Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
f9f9e324aba3f14a7b64809625654abe9e5178d1
205
204
2006-10-06T01:07:19Z
WikiSysop
1
/* Downloading the OpenBIOS FCode Suite? */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executable binaries for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
* Includ-able tokenizer-source files for Local Values Support (explained in
one of the User's Guide documents)
Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
cecb6c365c2179848d209945e9a12521f8389748
206
205
2006-10-06T01:07:33Z
WikiSysop
1
/* Executable binaries for three platforms */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
* Includ-able tokenizer-source files for Local Values Support (explained in
one of the User's Guide documents)
Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
4a0317f18aad6bda498d9375da2942bb03f7c4ef
207
206
2006-10-06T01:09:15Z
WikiSysop
1
/* Local Value Support */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
* Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in
one of the User's Guide documents)
Five files: One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality], the second adds a development-time facility, the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
=== Todo ===
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
86c66d426be12c2f6cd0d14749588a99b4797a25
IEEE 1275-1994
0
15
113
112
2006-10-05T23:58:24Z
Stepan
2
wikitext
text/x-wiki
After 5 years the IEEE 1275-1994 standard got withdrawn by the IEEE Standards Association. This does by no means implicate that this standard is abandoned or dead. There are several commercial implementations of Open Firmware and a quite reasonable number of hardware vendors support it. IEEE sold it to Global Engineering who still offer it.
To Contact Global Engineering, use Phone: 1-800-854-7179, Fax: 303-397-2740. Out side the U.S. call 303-792-2181. You can also purchase the IEEE 1275-1994 document online from the [http://global.ihs.com/ Global Engineering website].
To get started with OpenBIOS, download the IEEE 1275-1994, Standard for Boot (Initialization Configuration) Firmware Core Requirements and Practices. You can get the document from our [http://www.openbios.org/docs/of1275.pdf local mirror] or from the [ftp://playground.sun.com/pub/p1275/coredoc/1275-1994/1275.ps.gz IEEE 1275-1994 ftp archive at sun.com].
For more information on IEEE 1275 Open Firmware, we recommend you browse the [http://playground.sun.com/pub/p1275 IEEE Standard 1275 Working Group's Home Page]. There you will find general information and official minutes of the Working Group.
The Open Firmware standard is the elementary base of OpenBIOS. Any questions are welcome, please contact [[Stepan|Stefan Reinauer] or the [[Mailinglist||OpenBIOS Mailinglist]].
771db64227d5d058e784b9069af79e74ee226d2b
114
113
2006-10-05T23:58:41Z
Stepan
2
wikitext
text/x-wiki
After 5 years the IEEE 1275-1994 standard got withdrawn by the IEEE Standards Association. This does by no means implicate that this standard is abandoned or dead. There are several commercial implementations of Open Firmware and a quite reasonable number of hardware vendors support it. IEEE sold it to Global Engineering who still offer it.
To Contact Global Engineering, use Phone: 1-800-854-7179, Fax: 303-397-2740. Out side the U.S. call 303-792-2181. You can also purchase the IEEE 1275-1994 document online from the [http://global.ihs.com/ Global Engineering website].
To get started with OpenBIOS, download the IEEE 1275-1994, Standard for Boot (Initialization Configuration) Firmware Core Requirements and Practices. You can get the document from our [http://www.openbios.org/docs/of1275.pdf local mirror] or from the [ftp://playground.sun.com/pub/p1275/coredoc/1275-1994/1275.ps.gz IEEE 1275-1994 ftp archive at sun.com].
For more information on IEEE 1275 Open Firmware, we recommend you browse the [http://playground.sun.com/pub/p1275 IEEE Standard 1275 Working Group's Home Page]. There you will find general information and official minutes of the Working Group.
The Open Firmware standard is the elementary base of OpenBIOS. Any questions are welcome, please contact [[Stepan|Stefan Reinauer] or the [[Mailinglist|OpenBIOS Mailinglist]].
3c25b188f148bca33297cf3ce9d5b1d1e85689d9
115
114
2006-10-06T00:00:16Z
Stepan
2
wikitext
text/x-wiki
After 5 years the IEEE 1275-1994 standard got withdrawn by the IEEE Standards Association. This does by no means implicate that this standard is abandoned or dead. There are several commercial implementations of Open Firmware and a quite reasonable number of hardware vendors support it. IEEE sold it to Global Engineering who still offer it.
To Contact Global Engineering, use Phone: 1-800-854-7179, Fax: 303-397-2740. Out side the U.S. call 303-792-2181. You can also purchase the IEEE 1275-1994 document online from the [http://global.ihs.com/ Global Engineering website].
To get started with OpenBIOS, download the IEEE 1275-1994, Standard for Boot (Initialization Configuration) Firmware Core Requirements and Practices. You can get the document from our [http://www.openbios.org/docs/of1275.pdf local mirror] or from the [ftp://playground.sun.com/pub/p1275/coredoc/1275-1994/1275.ps.gz IEEE 1275-1994 ftp archive at sun.com].
For more information on IEEE 1275 Open Firmware, we recommend you browse the [http://playground.sun.com/pub/p1275 IEEE Standard 1275 Working Group's Home Page]. There you will find general information and official minutes of the Working Group.
The Open Firmware standard is the elementary base of OpenBIOS. Any questions are welcome, please contact [[User:Stepan|Stefan Reinauer]] or the [[Mailinglist|OpenBIOS Mailinglist]].
3ae9d9317a1fdc2c0d1d6660aaf54bb41f2dc05b
User:Stepan
2
18
272
2006-10-05T23:59:13Z
Stepan
2
wikitext
text/x-wiki
=== About Stefan R. ===
Stefan founded the OpenBIOS project in 1997 and works on firmware related issues ever since. His company [http://www.coresystems.de/ coresystems GmbH] offers a variety of firmware and lowlevel related services.
[[Image:stefan2.jpg]]
See http://www.openbios.org/ for more information on OpenBIOS
21cb6632e1ac71095ae9ce77d504da1960bbe76b
273
272
2006-10-05T23:59:40Z
Stepan
2
/* About Stefan R. */
wikitext
text/x-wiki
=== About Stefan R. ===
Stefan founded the OpenBIOS project in 1997 and works on firmware related issues ever since. His company [http://www.coresystems.de/ coresystems GmbH] offers a variety of firmware and lowlevel related services.
[[Image:stefan2.jpg]]
See http://www.linuxbios.org/ for more information on LinuxBIOS
f8b810d3742ff548930adc7ee8028fab852b1cd9
274
273
2006-10-06T00:00:45Z
Stepan
2
/* About Stefan R. */
wikitext
text/x-wiki
=== About Stefan R. ===
Stefan founded the OpenBIOS project in 1997 and works on firmware related issues ever since. His company [http://www.coresystems.de/ coresystems GmbH] offers a variety of firmware and lowlevel related services.
[[Image:stefan2.jpg]]
See http://www.linuxbios.org/ for more information on LinuxBIOS
Contact Stefan at stepan at coresystems dot eu
150634d67a83fed09a3743a4431abce6e1dd930a
Welcome to OpenBIOS
0
2
12
11
2006-10-06T00:02:19Z
Stepan
2
/* Progress */
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
== Download ==
Get the latest version of OpenBIOS. See the [Downloads|development download page] or the [Releases|releases page]
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
fe48c17cfe83a57f8a01fbdd6d1321ec63979f1e
13
12
2006-10-06T00:02:48Z
Stepan
2
/* Download */
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
06ff640a9679f4ee0dd28f0a611ca01f1cc6a0de
14
13
2006-10-06T00:02:56Z
Stepan
2
/* Download */
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
c00cd54d5c12b5f940b5024228e2a55f7c8b8c1a
Forth/FCode
0
19
278
2006-10-06T00:04:33Z
Stepan
2
wikitext
text/x-wiki
= What is Forth? =
From the Forth FAQ: Forth is a stack-based, extensible language without type-checking. It is probably best known for its "reverse Polish" (postfix) arithmetic notation, familiar to users of Hewlett-Packard calculators: to add two numbers in Forth, you would type 3 5 + instead of 3+5. The fundamental program unit in Forth is the "word": a named data item, subroutine, or operator. Programming in Forth consists of defining new words in terms of existing ones.
= Why and where is Forth used? =
Although invented in 1970, Forth became widely known with the advent of personal computers, where its high performance and economy of memory were attractive. These advantages still make Forth popular in embedded microcontroller systems, in locations ranging from the Space Shuttle to the bar-code reader used by your Federal Express driver. Forth's interactive nature streamlines the test and development of new hardware. Incremental development, a fast program-debug cycle, full interactive access to any level of the program, and the ability to work at a high "level of abstraction," all contribute to Forth's reputation for very high programmer productivity. These, plus the flexibility and malleability of the language, are the reasons most cited for choosing Forth for embedded systems. Find more information here.
= FCode =
FCode is a Forth dialect compliant to ANS Forth, that is available in two different forms: source and bytecode. FCode bytecode is the compiled form of FCode source.
= Why bytecode? =
Bytecode is small and efficient. And an evaluator (bytecode virtual machine) is almost trivial to implement. For example, putting a 1 to the stack only takes one byte in an FCode bytecode binary. This is especially valuable on combined system or expansion hardware roms where the available space is limited.
964ac8f861154a026ab114b520a9a899541d925e
279
278
2006-10-06T00:05:19Z
Stepan
2
/* Why and where is Forth used? */
wikitext
text/x-wiki
= What is Forth? =
From the Forth FAQ: Forth is a stack-based, extensible language without type-checking. It is probably best known for its "reverse Polish" (postfix) arithmetic notation, familiar to users of Hewlett-Packard calculators: to add two numbers in Forth, you would type 3 5 + instead of 3+5. The fundamental program unit in Forth is the "word": a named data item, subroutine, or operator. Programming in Forth consists of defining new words in terms of existing ones.
= Why and where is Forth used? =
Although invented in 1970, Forth became widely known with the advent of personal computers, where its high performance and economy of memory were attractive. These advantages still make Forth popular in embedded microcontroller systems, in locations ranging from the Space Shuttle to the bar-code reader used by your Federal Express driver. Forth's interactive nature streamlines the test and development of new hardware. Incremental development, a fast program-debug cycle, full interactive access to any level of the program, and the ability to work at a high "level of abstraction," all contribute to Forth's reputation for very high programmer productivity. These, plus the flexibility and malleability of the language, are the reasons most cited for choosing Forth for embedded systems. Find more information [http://www.complang.tuwien.ac.at/forth/faq/why-forth here].
= FCode =
FCode is a Forth dialect compliant to ANS Forth, that is available in two different forms: source and bytecode. FCode bytecode is the compiled form of FCode source.
= Why bytecode? =
Bytecode is small and efficient. And an evaluator (bytecode virtual machine) is almost trivial to implement. For example, putting a 1 to the stack only takes one byte in an FCode bytecode binary. This is especially valuable on combined system or expansion hardware roms where the available space is limited.
dd2af80ee5770998c6cd12aba2d518bb90af8018
280
279
2006-10-06T00:05:38Z
Stepan
2
/* What is Forth? */
wikitext
text/x-wiki
= What is Forth? =
From the [http://www.faqs.org/faqs/computer-lang/forth-faq/part1/ Forth FAQ]: Forth is a stack-based, extensible language without type-checking. It is probably best known for its "reverse Polish" (postfix) arithmetic notation, familiar to users of Hewlett-Packard calculators: to add two numbers in Forth, you would type 3 5 + instead of 3+5. The fundamental program unit in Forth is the "word": a named data item, subroutine, or operator. Programming in Forth consists of defining new words in terms of existing ones.
= Why and where is Forth used? =
Although invented in 1970, Forth became widely known with the advent of personal computers, where its high performance and economy of memory were attractive. These advantages still make Forth popular in embedded microcontroller systems, in locations ranging from the Space Shuttle to the bar-code reader used by your Federal Express driver. Forth's interactive nature streamlines the test and development of new hardware. Incremental development, a fast program-debug cycle, full interactive access to any level of the program, and the ability to work at a high "level of abstraction," all contribute to Forth's reputation for very high programmer productivity. These, plus the flexibility and malleability of the language, are the reasons most cited for choosing Forth for embedded systems. Find more information [http://www.complang.tuwien.ac.at/forth/faq/why-forth here].
= FCode =
FCode is a Forth dialect compliant to ANS Forth, that is available in two different forms: source and bytecode. FCode bytecode is the compiled form of FCode source.
= Why bytecode? =
Bytecode is small and efficient. And an evaluator (bytecode virtual machine) is almost trivial to implement. For example, putting a 1 to the stack only takes one byte in an FCode bytecode binary. This is especially valuable on combined system or expansion hardware roms where the available space is limited.
9b146fa8816cd78ad3dd550e275abfb107318c28
On the Net
0
20
283
2006-10-06T00:07:18Z
Stepan
2
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* CodeGen
* SUN
* Apple
* FirmWorks
* Hardware Support - Chipmakers angle for Linux support, an article about te importance of Open Source software for harware vendors by Stephen Shankland
Open Firmware Documentation (non local)
== What is Open Firmware? ==
Hardware Independant Boot Code - - An Open Firmware description at an introductory level by Matthew Johnson
Open Firmware homepage
The OpenFirmware IEEE 1275-1994
Apple's Open Firmware Home Page - Besides Apple's Open Firmware Technotes, this page has a link to a list of PCI cards supporting Open Firmware
Writing FCode 3.x Programs
OpenBoot 3.x Command Reference Manual
OpenBoot 3.x Quick Reference
== Forth ==
Forth FAQ
kForth - programming examples
DPANS'94 - very interesting: annex D and E.
Gforth - Forth implementation of the GNU project
PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files
Moving Forth - Article on writing Forth Kernels by Brad Rodriguez
Writing FCode 3.0 Programs
Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
gfob - a forth source obfuscator
Primer - A Beginner's Guide to Forth by J.V. Noble
Forth engines - written in several languages.
Thoughtful Programming and Forth - an essay by Jeff Fox.
Selected Forth Papers - at theforthsource.com
Stack Machines
Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
Multiboot standard
GRUB - GRand Unified Bootloader
Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
Flashing on Linux Systems
MTD - Memory Technology Device Subsystem for Linux
/dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
== Other Open Source Firmware Implementations ==
LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
Virtual Machines and Emulation
Bochs - portable open source IA-32 (x86) PC emulator
DOSemu - DOS Emulation for Linux
Plex86 - extensible open source PC virtualization software
81fa0372ba788589ebb1bc33cfa1cf02f6333f44
284
283
2006-10-06T00:08:54Z
Stepan
2
/* Open Firmware Companies/Vendor support */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.apple.com Apple]
* [http://www.ibm.com IBM]
== What is Open Firmware? ==
Hardware Independant Boot Code - - An Open Firmware description at an introductory level by Matthew Johnson
Open Firmware homepage
The OpenFirmware IEEE 1275-1994
Apple's Open Firmware Home Page - Besides Apple's Open Firmware Technotes, this page has a link to a list of PCI cards supporting Open Firmware
Writing FCode 3.x Programs
OpenBoot 3.x Command Reference Manual
OpenBoot 3.x Quick Reference
== Forth ==
Forth FAQ
kForth - programming examples
DPANS'94 - very interesting: annex D and E.
Gforth - Forth implementation of the GNU project
PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files
Moving Forth - Article on writing Forth Kernels by Brad Rodriguez
Writing FCode 3.0 Programs
Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
gfob - a forth source obfuscator
Primer - A Beginner's Guide to Forth by J.V. Noble
Forth engines - written in several languages.
Thoughtful Programming and Forth - an essay by Jeff Fox.
Selected Forth Papers - at theforthsource.com
Stack Machines
Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
Multiboot standard
GRUB - GRand Unified Bootloader
Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
Flashing on Linux Systems
MTD - Memory Technology Device Subsystem for Linux
/dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
== Other Open Source Firmware Implementations ==
LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
Virtual Machines and Emulation
Bochs - portable open source IA-32 (x86) PC emulator
DOSemu - DOS Emulation for Linux
Plex86 - extensible open source PC virtualization software
c6a1343686b2ca089860bc4702ebfaddf34a3e10
285
284
2006-10-06T00:09:39Z
Stepan
2
/* Other Open Source Firmware Implementations */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.apple.com Apple]
* [http://www.ibm.com IBM]
== What is Open Firmware? ==
Hardware Independant Boot Code - - An Open Firmware description at an introductory level by Matthew Johnson
Open Firmware homepage
The OpenFirmware IEEE 1275-1994
Apple's Open Firmware Home Page - Besides Apple's Open Firmware Technotes, this page has a link to a list of PCI cards supporting Open Firmware
Writing FCode 3.x Programs
OpenBoot 3.x Command Reference Manual
OpenBoot 3.x Quick Reference
== Forth ==
Forth FAQ
kForth - programming examples
DPANS'94 - very interesting: annex D and E.
Gforth - Forth implementation of the GNU project
PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files
Moving Forth - Article on writing Forth Kernels by Brad Rodriguez
Writing FCode 3.0 Programs
Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
gfob - a forth source obfuscator
Primer - A Beginner's Guide to Forth by J.V. Noble
Forth engines - written in several languages.
Thoughtful Programming and Forth - an essay by Jeff Fox.
Selected Forth Papers - at theforthsource.com
Stack Machines
Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
Multiboot standard
GRUB - GRand Unified Bootloader
Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
Flashing on Linux Systems
MTD - Memory Technology Device Subsystem for Linux
/dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
== Other Open Source Firmware Implementations ==
* LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
* FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
* TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
* Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
f2d679a3b6a4837c2d516c8cbffaa1135f8c35fd
286
285
2006-10-06T00:10:16Z
Stepan
2
/* Booting */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.apple.com Apple]
* [http://www.ibm.com IBM]
== What is Open Firmware? ==
Hardware Independant Boot Code - - An Open Firmware description at an introductory level by Matthew Johnson
Open Firmware homepage
The OpenFirmware IEEE 1275-1994
Apple's Open Firmware Home Page - Besides Apple's Open Firmware Technotes, this page has a link to a list of PCI cards supporting Open Firmware
Writing FCode 3.x Programs
OpenBoot 3.x Command Reference Manual
OpenBoot 3.x Quick Reference
== Forth ==
Forth FAQ
kForth - programming examples
DPANS'94 - very interesting: annex D and E.
Gforth - Forth implementation of the GNU project
PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files
Moving Forth - Article on writing Forth Kernels by Brad Rodriguez
Writing FCode 3.0 Programs
Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
gfob - a forth source obfuscator
Primer - A Beginner's Guide to Forth by J.V. Noble
Forth engines - written in several languages.
Thoughtful Programming and Forth - an essay by Jeff Fox.
Selected Forth Papers - at theforthsource.com
Stack Machines
Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* Multiboot standard
* GRUB - GRand Unified Bootloader
* Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
== Flashing on Linux Systems ==
* MTD - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
* Uniflash (nonlinux)
* flashrom (LinuxBIOS)
== Other Open Source Firmware Implementations ==
* LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
* FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
* TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
* Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
960dd2cd5ee04b8e33ae3e9cf8d446e01a89a323
287
286
2006-10-06T00:11:21Z
Stepan
2
/* Forth */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.apple.com Apple]
* [http://www.ibm.com IBM]
== What is Open Firmware? ==
Hardware Independant Boot Code - - An Open Firmware description at an introductory level by Matthew Johnson
Open Firmware homepage
The OpenFirmware IEEE 1275-1994
Apple's Open Firmware Home Page - Besides Apple's Open Firmware Technotes, this page has a link to a list of PCI cards supporting Open Firmware
Writing FCode 3.x Programs
OpenBoot 3.x Command Reference Manual
OpenBoot 3.x Quick Reference
== Forth ==
* Forth FAQ
* kForth - programming examples
* DPANS'94 - very interesting: annex D and E.
* Gforth - Forth implementation of the GNU project
* PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files
* Moving Forth - Article on writing Forth Kernels by Brad Rodriguez
* Writing FCode 3.0 Programs
* Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* gfob - a forth source obfuscator
* Primer - A Beginner's Guide to Forth by J.V. Noble
* Forth engines - written in several languages.
* Thoughtful Programming and Forth - an essay by Jeff Fox.
* Selected Forth Papers - at theforthsource.com
== Stack Machines ==
* Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* Multiboot standard
* GRUB - GRand Unified Bootloader
* Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
== Flashing on Linux Systems ==
* MTD - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
* Uniflash (nonlinux)
* flashrom (LinuxBIOS)
== Other Open Source Firmware Implementations ==
* LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
* FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
* TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
* Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
477a28d14559e329f37c3a21f8f1859e7ecbf524
288
287
2006-10-06T00:11:41Z
Stepan
2
/* What is Open Firmware? */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.apple.com Apple]
* [http://www.ibm.com IBM]
== What is Open Firmware? ==
* Hardware Independant Boot Code - - An Open Firmware description at an introductory level by Matthew Johnson
* Open Firmware homepage
* The OpenFirmware IEEE 1275-1994
* Apple's Open Firmware Home Page - Besides Apple's Open Firmware Technotes, this page has a link to a list of PCI cards supporting Open Firmware
* Writing FCode 3.x Programs
* OpenBoot 3.x Command Reference Manual
* OpenBoot 3.x Quick Reference
== Forth ==
* Forth FAQ
* kForth - programming examples
* DPANS'94 - very interesting: annex D and E.
* Gforth - Forth implementation of the GNU project
* PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files
* Moving Forth - Article on writing Forth Kernels by Brad Rodriguez
* Writing FCode 3.0 Programs
* Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* gfob - a forth source obfuscator
* Primer - A Beginner's Guide to Forth by J.V. Noble
* Forth engines - written in several languages.
* Thoughtful Programming and Forth - an essay by Jeff Fox.
* Selected Forth Papers - at theforthsource.com
== Stack Machines ==
* Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* Multiboot standard
* GRUB - GRand Unified Bootloader
* Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
== Flashing on Linux Systems ==
* MTD - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
* Uniflash (nonlinux)
* flashrom (LinuxBIOS)
== Other Open Source Firmware Implementations ==
* LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
* FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
* TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
* Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
c082dee2bd289bc7bb792cf6b2f89e043163b918
289
288
2006-10-06T00:33:48Z
WikiSysop
1
/* What is Open Firmware? */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.apple.com Apple]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* Forth FAQ
* kForth - programming examples
* DPANS'94 - very interesting: annex D and E.
* Gforth - Forth implementation of the GNU project
* PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files
* Moving Forth - Article on writing Forth Kernels by Brad Rodriguez
* Writing FCode 3.0 Programs
* Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* gfob - a forth source obfuscator
* Primer - A Beginner's Guide to Forth by J.V. Noble
* Forth engines - written in several languages.
* Thoughtful Programming and Forth - an essay by Jeff Fox.
* Selected Forth Papers - at theforthsource.com
== Stack Machines ==
* Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* Multiboot standard
* GRUB - GRand Unified Bootloader
* Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
== Flashing on Linux Systems ==
* MTD - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
* Uniflash (nonlinux)
* flashrom (LinuxBIOS)
== Other Open Source Firmware Implementations ==
* LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
* FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
* TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
* Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
53882b1a85c1e7f1b098bff4e6651646532f5345
290
289
2006-10-06T00:34:05Z
WikiSysop
1
/* Open Firmware Companies/Vendor support */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* Forth FAQ
* kForth - programming examples
* DPANS'94 - very interesting: annex D and E.
* Gforth - Forth implementation of the GNU project
* PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files
* Moving Forth - Article on writing Forth Kernels by Brad Rodriguez
* Writing FCode 3.0 Programs
* Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* gfob - a forth source obfuscator
* Primer - A Beginner's Guide to Forth by J.V. Noble
* Forth engines - written in several languages.
* Thoughtful Programming and Forth - an essay by Jeff Fox.
* Selected Forth Papers - at theforthsource.com
== Stack Machines ==
* Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* Multiboot standard
* GRUB - GRand Unified Bootloader
* Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
== Flashing on Linux Systems ==
* MTD - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
* Uniflash (nonlinux)
* flashrom (LinuxBIOS)
== Other Open Source Firmware Implementations ==
* LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
* FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
* TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
* Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
8ad6789f936c6b8e9c59596c34daef26323ce3c1
291
290
2006-10-06T00:39:11Z
WikiSysop
1
/* Forth */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* Multiboot standard
* GRUB - GRand Unified Bootloader
* Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
== Flashing on Linux Systems ==
* MTD - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
* Uniflash (nonlinux)
* flashrom (LinuxBIOS)
== Other Open Source Firmware Implementations ==
* LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
* FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
* TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
* Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
4266b2aad28d194ece1d676ef8d90595ff83df65
292
291
2006-10-06T00:39:39Z
WikiSysop
1
/* Stack Machines */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* Multiboot standard
* GRUB - GRand Unified Bootloader
* Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
== Flashing on Linux Systems ==
* MTD - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
* Uniflash (nonlinux)
* flashrom (LinuxBIOS)
== Other Open Source Firmware Implementations ==
* LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
* FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
* TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
* Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
17719706704f6c64460009587878f44c6257a51b
293
292
2006-10-06T00:40:54Z
WikiSysop
1
/* Booting */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org] Etherboot
== Flashing on Linux Systems ==
* MTD - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
* Uniflash (nonlinux)
* flashrom (LinuxBIOS)
== Other Open Source Firmware Implementations ==
* LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
* FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
* TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
* Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
62e03c4c6dbd192c28b0784e50fc6a819348102e
294
293
2006-10-06T00:41:08Z
WikiSysop
1
/* Booting */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
== Flashing on Linux Systems ==
* MTD - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
* Uniflash (nonlinux)
* flashrom (LinuxBIOS)
== Other Open Source Firmware Implementations ==
* LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
* FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
* TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
* Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
60d4e5277613428dcbbe1408cbb5f13bb3518c00
295
294
2006-10-06T00:41:30Z
WikiSysop
1
/* Booting */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* MTD - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware
* Uniflash (nonlinux)
* flashrom (LinuxBIOS)
== Other Open Source Firmware Implementations ==
* LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
* FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
* TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
* Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
ca07cb8bbb2227b6b5487698c9dc8d754cd09538
296
295
2006-10-06T00:43:31Z
WikiSysop
1
/* Flashing on Linux Systems */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://linuxbios.org/ LinuxBIOS])
== Other Open Source Firmware Implementations ==
* LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot.
* FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS.
* TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus.
* Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
0318df8a111916f1712bc3f15c3491659bf2831a
297
296
2006-10-06T00:47:05Z
WikiSysop
1
/* Other Open Source Firmware Implementations */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://linuxbios.org/ LinuxBIOS])
== Other Open Source Firmware Implementations ==
* [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* redboot
* SLOF
* SUN OpenBoot
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
da3a0394b9f48186e83d7fb19c433fa6eeb8701e
298
297
2006-10-06T00:47:39Z
WikiSysop
1
/* Other Open Source Firmware Implementations */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://linuxbios.org/ LinuxBIOS])
== Other Open Source Firmware Implementations ==
* [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* redboot
* SLOF
* Open Hackware
* SUN OpenBoot
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* QEMU
* XEN
* Bochs - portable open source IA-32 (x86) PC emulator
* DOSemu - DOS Emulation for Linux
* Plex86 - extensible open source PC virtualization software
85215d12db1a6cd98eb01d5e982951e0da7223b1
299
298
2006-10-06T00:49:47Z
WikiSysop
1
/* Virtual Machines and Emulation */
wikitext
text/x-wiki
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://linuxbios.org/ LinuxBIOS])
== Other Open Source Firmware Implementations ==
* [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* redboot
* SLOF
* Open Hackware
* SUN OpenBoot
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* [http://www.qemu.com/ QEMU]
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux
* Hypervisor
* ...
daf3ce5c0a98896f4e0a73c17129683fc3682a9a
MediaWiki:Sidebar
8
7
60
59
2006-10-06T00:15:10Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Experience
** Progress
** Milestones
** Issues
** Releases
** Downloads|Downloads
* Development
** Environment
** Tools
*** Detokenizer
*** Tokenizer
** FCODE suite|FCODE suite
** Kernel
** Flashing
* Documentation
** OpenFirmware|OpenFirmware
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** currentevents-url|currentevents
** recentchanges-url|recentchanges
a45712076647cdb1e0418d7811666d879df3f57f
61
60
2006-10-06T00:16:55Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Experience
** Progress
** Milestones
** http://bugzilla.openbios.org/|Issues
** Releases|Releases
** Downloads|Downloads
* Development
** Environment
** Tools
*** Detokenizer
*** Tokenizer
** FCODE suite|FCODE suite
** Kernel
** Flashing
* Documentation
** OpenFirmware|OpenFirmware
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
701d930ae9bca6e0fc68c22e6455508940110b82
62
61
2006-10-06T00:18:54Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Experience
** http://bugzilla.openbios.org/|Issues
** Releases|Releases
** Downloads|Downloads
** Milestones|Milestones
* Development
** Environment
** Tools
*** Detokenizer
*** Tokenizer
** FCODE suite|FCODE suite
** Kernel
** Flashing
* Documentation
** OpenFirmware|OpenFirmware
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
b8885f380cc8f0134a6727e9a4390c4499c250b2
63
62
2006-10-06T00:21:40Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Experience
** http://bugzilla.openbios.org/|Issues
** Releases|Releases
** Downloads|Downloads
** Milestones|Milestones
* Development
** Tools
*** detok|Detokenizer
*** toke|Tokenizer
** FCODE suite|FCODE suite
** Kernel
** Flashing
* Documentation
** OpenFirmware|OpenFirmware
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
22459d2734787b7817efd57ad6db00a9e8e628d7
64
63
2006-10-06T00:22:35Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Experience
** http://bugzilla.openbios.org/|Issues
** Releases|Releases
** Downloads|Downloads
** Milestones|Milestones
* Development
** FCODE suite|FCODE suite
*** detok|Detokenizer
*** toke|Tokenizer
** BeginAgain|Kernel
** FlashRom|Flashing
* Documentation
** OpenFirmware|OpenFirmware
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
79b1d6021bde769cc33317c389ed464e89726928
65
64
2006-10-06T01:01:26Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Experience
** http://bugzilla.openbios.org/|Issues
** Releases|Releases
** Downloads|Downloads
** Milestones|Milestones
* Development
** FCODE suite|FCODE suite
** BeginAgain|Kernel
** FlashRom|Flashing
* Documentation
** OpenFirmware|OpenFirmware
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
97260095c095d5e3c05fe7b49362f9d2a4a74ef6
Licensing
0
14
108
107
2006-10-06T00:15:36Z
WikiSysop
1
[[License]] moved to [[Licensing]]
wikitext
text/x-wiki
= OpenBIOS Licensing =
OpenBIOS is licensed under the GNU General Public License v2. If you adapt OpenBIOS to your needs, please contact us with your changes so that you can contribute your changes back to the community.
= Why GPL? =
We see the GPL giving OpenBIOS a big competitive advantage over other firmware solutions:
* As a hardware vendor you get the warranty that nobody hiddenly improves the code you have been contributing without giving those improvements back. Thus, GPL guarantees that you keep control over your work and contributions.
* End users / customers get great benefit from OpenBIOS being GPL licensed: The GPL insures customers that a given platform will act like all other OpenBIOS platforms. BSD is a negative marketing point where BIOS is concerned.
= View the license =
Have a look at the complete license
b602b654e413058112896cc05b5debef95ebde42
License
0
21
311
2006-10-06T00:15:36Z
WikiSysop
1
[[License]] moved to [[Licensing]]
wikitext
text/x-wiki
#REDIRECT [[Licensing]]
1b5229cf3e4acf5a08dd63a0959b794fe0d3ea3c
Milestones
0
22
312
2006-10-06T00:19:09Z
WikiSysop
1
wikitext
text/x-wiki
... soon ...
215fd48902e0c9c5afd9adf1f6e1b50c6763d97e
BeginAgain
0
23
313
2006-10-06T00:24:55Z
WikiSysop
1
wikitext
text/x-wiki
= What is BeginAgain? =
BeginAgain is the Forth kernel, basically the heart of OpenBIOS. Right after the system is far enough to execute any C code, this kernel will take over control and execute the forth code part of OpenBIOS. BeginAgain supports the Forth language command group of IEEE 1275-1994 and passes the Hayes ANS forth compliance test.
= How does BeginAgain work? =
The OpenBIOS forth core "BeginAgain" is split into a forth kernel written in C and a forth dictionary which operated on by the kernel.
BeginAgain's approach is indirect threading. Forth words are compiled to execution tokens (pointers to the words dictionary entries). Only the prim words (minimal language support) are available as native C code.
When building the forth core, you get different versions of the forth kernel:
* a "hosted" unix binary.
This binary can be used on a unix system:
o to execute a forth dictionary from a file. This can be used for testing openbios code in a development environment on a unix host.
o to create a dictionary file. Such a dictionary file sets up all of the forth language. Primitives are indexed to save relocations.
The default is to create a forth dictionary forth.dict from forth/start.fs. This file includes all of the basic forth language constructs from forth/bootstrap.fs and starts the interpreter.
To achieve this, the hosted unix version contains a basic set of forth words coded in C that allow creating a full dictionary.
* a varying number of target specific binaries.
On x86 you can start openbios for example from GRUB or LinuxBIOS. They are all based on the same forth engine consisting of a dictionary scheduler, primitive words needed to build the forth environment, 2 stacks and a simple set of console functions. These binaries can not be started directly in the unix host environment.
= Building and Using BeginAgain =
== Requirements ==
* gcc
* grub or any other multiboot loader to run the standalone binary "openbios.multiboot"
== Building and Usage ==
* make
this builds "openbios.multiboot", the standalone image and "unix", the hosted image. Additionally it creates a forth dictionary file from forth/start.fs. All generated files are written to the absolute directory held by the variable BUILDDIR, which defaults to obj-[platform]. Some compile time parameters can be tweaked in include/config.h
* use "unix" to create a forth dictionary on your own:
$ ./unix -Iforth start.fs
creates the file forth.dict from forth source forth/start.fs.
* use "unix" to run a created dictionary:
$ ./unix forth.dict
This is useful for testing.
* booting openbios
You can boot openbios i.e. in grub. Add the following lines to your menu.lst:
title openbios
kernel (hd0,2)/boot/openbios.multiboot
module (hd0,2)/boot/openfirmware.dict
Note: change (hd0,2) to the partition you copied openbios and forth.dict to.
To boot OpenBIOS from LinuxBIOS/etherboot, you can either use "openbios" or "openbios.full":
o openbios is the pure kernel that loads the dictionary from a hardcoded address in flash memory (0xfffe0000)
o openbios.full also includes the dictionary directly so that it can be easily used from etherboot or the LinuxBIOS builtin ELF loader without taking care of the dictionary
= Dictionary Format =
The dictionary is a linked list of forth word definitions. Each forth word in this list looks like the following:
name length of name in bytes + 0x80 align with 0's flags (bit 7 set) LFA CFA PFA
When the forth interpreter looks for a certain word, it reads the variable last that always points to the last defined word and iterates over the list until it finds an appropriate word.
= Glossary =
== Dictionary ==
* LFA == link field address (backlink)
* CFA == code field address ("word type")
* PFA == program field address (definitions)
== Forth Engine ==
* TIB == text input buffer
* inner interpreter: interprets dictionary, does threading
* outer interpreter: "user" interpreter, reads forth words from user.
807ede0b278e7ce96ff1586ed5829f0416ea4adb
314
313
2006-10-06T00:25:17Z
WikiSysop
1
/* What is BeginAgain? */
wikitext
text/x-wiki
= What is BeginAgain? =
BeginAgain is the Forth kernel, basically the heart of OpenBIOS.
Right after the system is far enough to execute any C code, this kernel will take over control and execute the forth code part of OpenBIOS.
BeginAgain supports the Forth language command group of IEEE 1275-1994 and passes the Hayes ANS forth compliance test.
= How does BeginAgain work? =
The OpenBIOS forth core "BeginAgain" is split into a forth kernel written in C and a forth dictionary which operated on by the kernel.
BeginAgain's approach is indirect threading. Forth words are compiled to execution tokens (pointers to the words dictionary entries). Only the prim words (minimal language support) are available as native C code.
When building the forth core, you get different versions of the forth kernel:
* a "hosted" unix binary.
This binary can be used on a unix system:
o to execute a forth dictionary from a file. This can be used for testing openbios code in a development environment on a unix host.
o to create a dictionary file. Such a dictionary file sets up all of the forth language. Primitives are indexed to save relocations.
The default is to create a forth dictionary forth.dict from forth/start.fs. This file includes all of the basic forth language constructs from forth/bootstrap.fs and starts the interpreter.
To achieve this, the hosted unix version contains a basic set of forth words coded in C that allow creating a full dictionary.
* a varying number of target specific binaries.
On x86 you can start openbios for example from GRUB or LinuxBIOS. They are all based on the same forth engine consisting of a dictionary scheduler, primitive words needed to build the forth environment, 2 stacks and a simple set of console functions. These binaries can not be started directly in the unix host environment.
= Building and Using BeginAgain =
== Requirements ==
* gcc
* grub or any other multiboot loader to run the standalone binary "openbios.multiboot"
== Building and Usage ==
* make
this builds "openbios.multiboot", the standalone image and "unix", the hosted image. Additionally it creates a forth dictionary file from forth/start.fs. All generated files are written to the absolute directory held by the variable BUILDDIR, which defaults to obj-[platform]. Some compile time parameters can be tweaked in include/config.h
* use "unix" to create a forth dictionary on your own:
$ ./unix -Iforth start.fs
creates the file forth.dict from forth source forth/start.fs.
* use "unix" to run a created dictionary:
$ ./unix forth.dict
This is useful for testing.
* booting openbios
You can boot openbios i.e. in grub. Add the following lines to your menu.lst:
title openbios
kernel (hd0,2)/boot/openbios.multiboot
module (hd0,2)/boot/openfirmware.dict
Note: change (hd0,2) to the partition you copied openbios and forth.dict to.
To boot OpenBIOS from LinuxBIOS/etherboot, you can either use "openbios" or "openbios.full":
o openbios is the pure kernel that loads the dictionary from a hardcoded address in flash memory (0xfffe0000)
o openbios.full also includes the dictionary directly so that it can be easily used from etherboot or the LinuxBIOS builtin ELF loader without taking care of the dictionary
= Dictionary Format =
The dictionary is a linked list of forth word definitions. Each forth word in this list looks like the following:
name length of name in bytes + 0x80 align with 0's flags (bit 7 set) LFA CFA PFA
When the forth interpreter looks for a certain word, it reads the variable last that always points to the last defined word and iterates over the list until it finds an appropriate word.
= Glossary =
== Dictionary ==
* LFA == link field address (backlink)
* CFA == code field address ("word type")
* PFA == program field address (definitions)
== Forth Engine ==
* TIB == text input buffer
* inner interpreter: interprets dictionary, does threading
* outer interpreter: "user" interpreter, reads forth words from user.
996ec99cdade88d135aa85fec2caf0e886420aac
315
314
2006-10-06T00:26:06Z
WikiSysop
1
/* How does BeginAgain work? */
wikitext
text/x-wiki
= What is BeginAgain? =
BeginAgain is the Forth kernel, basically the heart of OpenBIOS.
Right after the system is far enough to execute any C code, this kernel will take over control and execute the forth code part of OpenBIOS.
BeginAgain supports the Forth language command group of IEEE 1275-1994 and passes the Hayes ANS forth compliance test.
= How does BeginAgain work? =
The OpenBIOS forth core "BeginAgain" is split into a forth kernel written in C and a forth dictionary which operated on by the kernel.
BeginAgain's approach is indirect threading. Forth words are compiled to execution tokens (pointers to the words dictionary entries). Only the prim words (minimal language support) are available as native C code.
When building the forth core, you get different versions of the forth kernel:
* a "hosted" unix binary.
This binary can be used on a unix system:
** to execute a forth dictionary from a file. This can be used for testing openbios code in a development environment on a unix host.
** to create a dictionary file. Such a dictionary file sets up all of the forth language. Primitives are indexed to save relocations.
The default is to create a forth dictionary forth.dict from forth/start.fs. This file includes all of the basic forth language constructs from forth/bootstrap.fs and starts the interpreter.
To achieve this, the hosted unix version contains a basic set of forth words coded in C that allow creating a full dictionary.
* a varying number of target specific binaries.
On x86 you can start openbios for example from GRUB or LinuxBIOS. They are all based on the same forth engine consisting of a dictionary scheduler, primitive words needed to build the forth environment, 2 stacks and a simple set of console functions. These binaries can not be started directly in the unix host environment.
= Building and Using BeginAgain =
== Requirements ==
* gcc
* grub or any other multiboot loader to run the standalone binary "openbios.multiboot"
== Building and Usage ==
* make
this builds "openbios.multiboot", the standalone image and "unix", the hosted image. Additionally it creates a forth dictionary file from forth/start.fs. All generated files are written to the absolute directory held by the variable BUILDDIR, which defaults to obj-[platform]. Some compile time parameters can be tweaked in include/config.h
* use "unix" to create a forth dictionary on your own:
$ ./unix -Iforth start.fs
creates the file forth.dict from forth source forth/start.fs.
* use "unix" to run a created dictionary:
$ ./unix forth.dict
This is useful for testing.
* booting openbios
You can boot openbios i.e. in grub. Add the following lines to your menu.lst:
title openbios
kernel (hd0,2)/boot/openbios.multiboot
module (hd0,2)/boot/openfirmware.dict
Note: change (hd0,2) to the partition you copied openbios and forth.dict to.
To boot OpenBIOS from LinuxBIOS/etherboot, you can either use "openbios" or "openbios.full":
o openbios is the pure kernel that loads the dictionary from a hardcoded address in flash memory (0xfffe0000)
o openbios.full also includes the dictionary directly so that it can be easily used from etherboot or the LinuxBIOS builtin ELF loader without taking care of the dictionary
= Dictionary Format =
The dictionary is a linked list of forth word definitions. Each forth word in this list looks like the following:
name length of name in bytes + 0x80 align with 0's flags (bit 7 set) LFA CFA PFA
When the forth interpreter looks for a certain word, it reads the variable last that always points to the last defined word and iterates over the list until it finds an appropriate word.
= Glossary =
== Dictionary ==
* LFA == link field address (backlink)
* CFA == code field address ("word type")
* PFA == program field address (definitions)
== Forth Engine ==
* TIB == text input buffer
* inner interpreter: interprets dictionary, does threading
* outer interpreter: "user" interpreter, reads forth words from user.
e95b30c0da628c37c5ffddd04283f00ed8e03838
316
315
2006-10-06T00:27:09Z
WikiSysop
1
/* Building and Usage */
wikitext
text/x-wiki
= What is BeginAgain? =
BeginAgain is the Forth kernel, basically the heart of OpenBIOS.
Right after the system is far enough to execute any C code, this kernel will take over control and execute the forth code part of OpenBIOS.
BeginAgain supports the Forth language command group of IEEE 1275-1994 and passes the Hayes ANS forth compliance test.
= How does BeginAgain work? =
The OpenBIOS forth core "BeginAgain" is split into a forth kernel written in C and a forth dictionary which operated on by the kernel.
BeginAgain's approach is indirect threading. Forth words are compiled to execution tokens (pointers to the words dictionary entries). Only the prim words (minimal language support) are available as native C code.
When building the forth core, you get different versions of the forth kernel:
* a "hosted" unix binary.
This binary can be used on a unix system:
** to execute a forth dictionary from a file. This can be used for testing openbios code in a development environment on a unix host.
** to create a dictionary file. Such a dictionary file sets up all of the forth language. Primitives are indexed to save relocations.
The default is to create a forth dictionary forth.dict from forth/start.fs. This file includes all of the basic forth language constructs from forth/bootstrap.fs and starts the interpreter.
To achieve this, the hosted unix version contains a basic set of forth words coded in C that allow creating a full dictionary.
* a varying number of target specific binaries.
On x86 you can start openbios for example from GRUB or LinuxBIOS. They are all based on the same forth engine consisting of a dictionary scheduler, primitive words needed to build the forth environment, 2 stacks and a simple set of console functions. These binaries can not be started directly in the unix host environment.
= Building and Using BeginAgain =
== Requirements ==
* gcc
* grub or any other multiboot loader to run the standalone binary "openbios.multiboot"
== Building and Usage ==
* make
this builds "openbios.multiboot", the standalone image and "unix", the hosted image. Additionally it creates a forth dictionary file from forth/start.fs. All generated files are written to the absolute directory held by the variable BUILDDIR, which defaults to obj-[platform]. Some compile time parameters can be tweaked in include/config.h
* use "unix" to create a forth dictionary on your own:
$ ./unix -Iforth start.fs
creates the file forth.dict from forth source forth/start.fs.
* use "unix" to run a created dictionary:
$ ./unix forth.dict
This is useful for testing.
* booting openbios
You can boot openbios i.e. in grub. Add the following lines to your menu.lst:
title openbios
kernel (hd0,2)/boot/openbios.multiboot
module (hd0,2)/boot/openfirmware.dict
Note: change (hd0,2) to the partition you copied openbios and forth.dict to.
To boot OpenBIOS from LinuxBIOS/etherboot, you can either use "openbios" or "openbios.full":
* openbios is the pure kernel that loads the dictionary from a hardcoded address in flash memory (0xfffe0000)
* openbios.full also includes the dictionary directly so that it can be easily used from etherboot or the LinuxBIOS builtin ELF loader without taking care of the dictionary
= Dictionary Format =
The dictionary is a linked list of forth word definitions. Each forth word in this list looks like the following:
name length of name in bytes + 0x80 align with 0's flags (bit 7 set) LFA CFA PFA
When the forth interpreter looks for a certain word, it reads the variable last that always points to the last defined word and iterates over the list until it finds an appropriate word.
= Glossary =
== Dictionary ==
* LFA == link field address (backlink)
* CFA == code field address ("word type")
* PFA == program field address (definitions)
== Forth Engine ==
* TIB == text input buffer
* inner interpreter: interprets dictionary, does threading
* outer interpreter: "user" interpreter, reads forth words from user.
ab58fc1bffa191773eccecced09daf2ead415e7a
317
316
2006-10-06T00:59:50Z
WikiSysop
1
/* How does BeginAgain work? */
wikitext
text/x-wiki
= What is BeginAgain? =
BeginAgain is the Forth kernel, basically the heart of OpenBIOS.
Right after the system is far enough to execute any C code, this kernel will take over control and execute the forth code part of OpenBIOS.
BeginAgain supports the Forth language command group of IEEE 1275-1994 and passes the Hayes ANS forth compliance test.
= How does BeginAgain work? =
The OpenBIOS forth core "BeginAgain" is split into a forth kernel written in C and a forth dictionary which operated on by the kernel.
BeginAgain's approach is indirect threading. Forth words are compiled to execution tokens (pointers to the words dictionary entries). Only the prim words (minimal language support) are available as native C code.
When building the forth core, you get different versions of the forth kernel:
* a "hosted" unix binary. This binary can be used on a unix system:
** to execute a forth dictionary from a file. This can be used for testing openbios code in a development environment on a unix host.
** to create a dictionary file. Such a dictionary file sets up all of the forth language. Primitives are indexed to save relocations.
The default is to create a forth dictionary forth.dict from forth/start.fs. This file includes all of the basic forth language constructs from forth/bootstrap.fs and starts the interpreter.
To achieve this, the hosted unix version contains a basic set of forth words coded in C that allow creating a full dictionary.
* a varying number of target specific binaries.
On x86 you can start openbios for example from GRUB or LinuxBIOS. They are all based on the same forth engine consisting of a dictionary scheduler, primitive words needed to build the forth environment, 2 stacks and a simple set of console functions. These binaries can not be started directly in the unix host environment.
= Building and Using BeginAgain =
== Requirements ==
* gcc
* grub or any other multiboot loader to run the standalone binary "openbios.multiboot"
== Building and Usage ==
* make
this builds "openbios.multiboot", the standalone image and "unix", the hosted image. Additionally it creates a forth dictionary file from forth/start.fs. All generated files are written to the absolute directory held by the variable BUILDDIR, which defaults to obj-[platform]. Some compile time parameters can be tweaked in include/config.h
* use "unix" to create a forth dictionary on your own:
$ ./unix -Iforth start.fs
creates the file forth.dict from forth source forth/start.fs.
* use "unix" to run a created dictionary:
$ ./unix forth.dict
This is useful for testing.
* booting openbios
You can boot openbios i.e. in grub. Add the following lines to your menu.lst:
title openbios
kernel (hd0,2)/boot/openbios.multiboot
module (hd0,2)/boot/openfirmware.dict
Note: change (hd0,2) to the partition you copied openbios and forth.dict to.
To boot OpenBIOS from LinuxBIOS/etherboot, you can either use "openbios" or "openbios.full":
* openbios is the pure kernel that loads the dictionary from a hardcoded address in flash memory (0xfffe0000)
* openbios.full also includes the dictionary directly so that it can be easily used from etherboot or the LinuxBIOS builtin ELF loader without taking care of the dictionary
= Dictionary Format =
The dictionary is a linked list of forth word definitions. Each forth word in this list looks like the following:
name length of name in bytes + 0x80 align with 0's flags (bit 7 set) LFA CFA PFA
When the forth interpreter looks for a certain word, it reads the variable last that always points to the last defined word and iterates over the list until it finds an appropriate word.
= Glossary =
== Dictionary ==
* LFA == link field address (backlink)
* CFA == code field address ("word type")
* PFA == program field address (definitions)
== Forth Engine ==
* TIB == text input buffer
* inner interpreter: interprets dictionary, does threading
* outer interpreter: "user" interpreter, reads forth words from user.
09f1c6bf251d9750bfb344643be5d008f408829d
FCODE suite
0
17
208
207
2006-10-06T01:09:32Z
WikiSysop
1
/* Local Value Support */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents)
Five files: One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality], the second adds a development-time facility, the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
=== Todo ===
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
22efd543d6b62d609aa3380e1323e88323317ff5
209
208
2006-10-06T01:11:21Z
WikiSysop
1
/* Local Value Support */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents)
Five files:
* One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
=== Todo ===
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
40cf1b5566fabc948cc3ab38ad148240154c2999
210
209
2006-10-06T01:11:44Z
WikiSysop
1
/* Local Value Support */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: LoclValSupport.tar.bz2
=== Todo ===
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
2e38894a42c824db20b81b2b8b2cedfefd5709f6
211
210
2006-10-06T01:12:04Z
WikiSysop
1
/* Local Value Support */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
* A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location.
Available as a Tar-File: StillToBeDonesList.tar.bz2
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
b18c1ef7fb476183e4d8318b8ea4f310c98c94e0
212
211
2006-10-06T01:12:55Z
WikiSysop
1
/* Todo */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: TestSrc.tar.bz2
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
45c5ae497f157bf615070fd213b671194252edc2
213
212
2006-10-06T01:14:12Z
WikiSysop
1
/* The suite of unit-test cases */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used.
Available as a Tar-File: TestTools.tar.bz2
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
c89a4a3a73c3e3d41fa8c8e25953fb03dd264fd6
214
213
2006-10-06T01:15:35Z
WikiSysop
1
/* Test Tools */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
88e6d4a53b9bf716b365d3c4e2916dd83f1080a3
215
214
2006-10-06T01:32:46Z
WikiSysop
1
/* Source Code */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
c3d493ad08d5d842576eab2068ba18bcb0d42f81
216
215
2006-10-06T01:33:22Z
WikiSysop
1
/* Documentation */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
d0f0a88615fa39b8db9aaaece69f4c53d715c52d
217
216
2006-10-06T01:33:38Z
WikiSysop
1
/* Executables for three platforms */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
0d960fe9e9dff0e2890484a6f2edd64595aff81a
218
217
2006-10-06T01:33:51Z
WikiSysop
1
/* Executables for three platforms */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
dd8d56d98e45d78421351d83fe23abbc5b9cacae
219
218
2006-10-06T01:34:23Z
WikiSysop
1
/* Local Value Support */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
2bd4c610a4942607856b52887ac35e26956e0161
220
219
2006-10-06T01:34:39Z
WikiSysop
1
/* Todo */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
ecab140a80067c9b28132c4233e36a22681eb307
221
220
2006-10-06T01:34:54Z
WikiSysop
1
/* Unit-Test Suite */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
f854164b92f789cc22cd98ae3db08308e10af0bd
222
221
2006-10-06T01:50:35Z
WikiSysop
1
/* Unit-Test Suite Logs */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/toke-0.6.10 coverage report for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0.0 coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
122591f47990cb186ba2ae9fdedabcfe9307d639
223
222
2006-10-06T01:52:12Z
WikiSysop
1
/* Coverage Reports */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
d8a1626233faf9546d7ee4ecd8154041d5b2dc86
224
223
2006-10-06T01:53:47Z
WikiSysop
1
/* Documentation */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
30f2b22f5bd49de7c71c0201987450e5294c048f
225
224
2006-10-06T01:54:09Z
WikiSysop
1
/* Documentation */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
98458a7075ccce6088ec93b5067c357e51521321
226
225
2006-10-06T01:54:47Z
WikiSysop
1
/* Downloading the OpenBIOS FCode Suite */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
70503411342deff9e121d86b9f3c2cf784c5960f
227
226
2006-10-06T01:55:38Z
WikiSysop
1
/* Downloading the OpenBIOS FCode Suite */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist.
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
5a0487b26bb276947fa76de9ef672f5f2ed65d26
228
227
2006-10-06T01:58:34Z
WikiSysop
1
/* What is the OpenBIOS FCODE Suite? */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
5eff17ebb3092e4ce20bacb8e67a0d2309fdd463
229
228
2006-10-06T01:58:42Z
WikiSysop
1
/* What is the OpenBIOS FCODE Suite? */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly.
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
ce13dd054f794335feaaba1f1c74169b94faec0f
230
229
2006-10-06T10:46:06Z
Stepan
2
/* What is the OpenBIOS FCODE Suite? */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself.
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
2464f4e04038fdb53b37581fa02b4b01d99c0f88
News
0
24
319
2006-10-06T01:17:06Z
WikiSysop
1
wikitext
text/x-wiki
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
b368fc94b25c4e638287b74f332b45526464e823
320
319
2006-10-06T10:39:19Z
Stepan
2
wikitext
text/x-wiki
'''FCODE suite 1.0.1 available''' (2006-09-21)
Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
08da2c62b1e410b2eef769b0de5427248c5bac0a
321
320
2006-10-06T10:40:46Z
Stepan
2
wikitext
text/x-wiki
'''FCODE suite 1.0.1 available''' (2006-09-21)
Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
'''older news have not been added to the wiki yet. please notify [[User:Stepan|Stefan Reinauer]] if you need those.'''
17c41acfada4db870df2b78f12956486d6c218fc
Welcome to OpenBIOS
0
2
15
14
2006-10-06T01:17:43Z
WikiSysop
1
/* News */
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
[[News|all news]]
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
dd8402ce5bf3e9d754eb223eb37a1ae626b1761b
16
15
2006-10-06T01:18:00Z
WikiSysop
1
/* News */
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
[[News|[older news]]]
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
c15872cb717e3e2210b80ac9a8647a010593a89c
17
16
2006-10-06T01:45:16Z
WikiSysop
1
/* News */
wikitext
text/x-wiki
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''FCODE suite 1.0.1 available''' (2006-09-21)
Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, better error reporting and some bug fixes.
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]].
[[News|[older news]]]
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
53d9fe27403ae632d5bcacbebd94ff8586eb8a4d
18
17
2006-10-06T09:36:39Z
Stepan
2
wikitext
text/x-wiki
__NOTOC__
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''FCODE suite 1.0.1 available''' (2006-09-21)
Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, better error reporting and some bug fixes.
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]].
[[News|[older news]]]
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
68c3f3b7cfc26871b7af1b343a0004d858baab63
19
18
2006-10-06T10:38:44Z
Stepan
2
update of news
wikitext
text/x-wiki
__NOTOC__
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''FCODE suite 1.0.1 available''' (2006-09-21)
Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]].
[[News|[older news]]]
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
f65050ac8c6ef9be905c9d716c3d7ba96331d52c
MediaWiki:Userlogin
8
8
77
76
2006-10-06T01:28:07Z
WikiSysop
1
wikitext
text/x-wiki
Log in
f7c400ed695f898b8ee9d21664aa17b5bb693828
MediaWiki:Anontalkpagetext
8
3
49
48
2006-10-06T01:28:28Z
WikiSysop
1
wikitext
text/x-wiki
----''This is the discussion page for an anonymous user who has not created an account yet or who does not use it. We therefore have to use the numerical IP address to identify him/her. Such an IP address can be shared by several users. If you are an anonymous user and feel that irrelevant comments have been directed at you, please [[Special:Userlogin|log in]] to avoid future confusion with other anonymous users.''
6e9e3924152c4761a289668c207689e81ea5ce11
MediaWiki:Nocreatetext
8
5
53
52
2006-10-06T01:28:47Z
WikiSysop
1
wikitext
text/x-wiki
This site has restricted the ability to create new pages.
You can go back and edit an existing page, or [[Special:Userlogin|log in]].
61f17ba88406ff8ea58d4982a6d1ff9ebbe4042b
MediaWiki:Nosuchuser
8
6
55
54
2006-10-06T01:29:03Z
WikiSysop
1
wikitext
text/x-wiki
There is no user by the name "$1". Check your spelling.
6ba553bc5c26369737785821c5f638a089167e05
OpenBIOS
0
16
128
127
2006-10-06T01:29:55Z
WikiSysop
1
/* OpenBIOS */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the FCode Suite page (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
0fca65cdc6d35699dfbbbe6d488634817a7d5fde
129
128
2006-10-06T01:30:18Z
WikiSysop
1
/* FCode Suite */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: detok-0.6.1 (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
b4c4cde32ad271104c137f5ae27afe769b2cf75c
130
129
2006-10-06T01:30:43Z
WikiSysop
1
/* detok */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: toke-0.6.10 (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
13086770804fca7fc5eae778d1f07a90c5266934
131
130
2006-10-06T01:31:02Z
WikiSysop
1
/* toke */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: BeginAgain 1.1 (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
c266939ddabef5e5b3f8d2da00c7f34081252b24
132
131
2006-10-06T01:31:20Z
WikiSysop
1
/* kernel */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
Information about /dev/bios is kept on the /dev/bios status page for historical reasons.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
9a56e1aa61fdc6ef62a54ec06f55f6f48574cd7c
133
132
2006-10-06T01:31:53Z
WikiSysop
1
/* /dev/bios */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz.
ea8e0c27bebc42e877540c1719bd5a57880f6b7c
134
133
2006-10-06T01:32:05Z
WikiSysop
1
/* romheaders */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/bin/romheaders.tar.gz romheaders.tar.gz].
adc9296d7bc8c37c77e99ff42aa9ec3d017e4d86
135
134
2006-10-06T11:02:23Z
Stepan
2
/* romheaders */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
0918aad65fedc57fa433d1657e9cfd629c6f359b
136
135
2006-10-06T11:03:05Z
Stepan
2
/* /dev/bios */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
95d3391e63d90aa9c3dc57b067eba58a3228d2a3
Contact us
0
10
85
84
2006-10-06T02:22:50Z
WikiSysop
1
/* Mailinglist */
wikitext
text/x-wiki
== The OpenBIOS Project ==
OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, documentation.
* need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this.
We of course appreciate any help, hints, patches, comments, etc.
NOTE: Please read our [[Project Statement]].
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome.
ca96e3873c6ab614e7e2629d5f740aff3d6fde81
User:Stepan
2
18
275
274
2006-10-06T10:42:13Z
Stepan
2
/* About Stefan R. */
wikitext
text/x-wiki
=== About Stefan Reinauer ===
Stefan founded the OpenBIOS project in 1997 and works on firmware related issues ever since. His company [http://www.coresystems.de/ coresystems GmbH] offers a variety of firmware and lowlevel related services.
[[Image:Stefan.jpg]]
See http://www.linuxbios.org/ for more information on LinuxBIOS
Contact Stefan at stepan at coresystems dot eu
Have a look at Stefan's private web page at http://www.stefan-reinauer.de/
478019a01ef5647ee834926b8efa4947f4ae8808
On the Net
0
20
300
299
2006-10-06T10:48:02Z
Stepan
2
/* Open Firmware Companies/Vendor support */
wikitext
text/x-wiki
__NOTOC__
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://linuxbios.org/ LinuxBIOS])
== Other Open Source Firmware Implementations ==
* [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* redboot
* SLOF
* Open Hackware
* SUN OpenBoot
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* [http://www.qemu.com/ QEMU]
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux
* Hypervisor
* ...
26b6efb3386d22718f730a9ad0cc0774f3146d02
Forth/FCode
0
19
281
280
2006-10-06T10:48:50Z
Stepan
2
/* What is Forth? */
wikitext
text/x-wiki
__NOTOC__
= What is Forth? =
From the [http://www.faqs.org/faqs/computer-lang/forth-faq/part1/ Forth FAQ]: Forth is a stack-based, extensible language without type-checking. It is probably best known for its "reverse Polish" (postfix) arithmetic notation, familiar to users of Hewlett-Packard calculators: to add two numbers in Forth, you would type 3 5 + instead of 3+5. The fundamental program unit in Forth is the "word": a named data item, subroutine, or operator. Programming in Forth consists of defining new words in terms of existing ones.
= Why and where is Forth used? =
Although invented in 1970, Forth became widely known with the advent of personal computers, where its high performance and economy of memory were attractive. These advantages still make Forth popular in embedded microcontroller systems, in locations ranging from the Space Shuttle to the bar-code reader used by your Federal Express driver. Forth's interactive nature streamlines the test and development of new hardware. Incremental development, a fast program-debug cycle, full interactive access to any level of the program, and the ability to work at a high "level of abstraction," all contribute to Forth's reputation for very high programmer productivity. These, plus the flexibility and malleability of the language, are the reasons most cited for choosing Forth for embedded systems. Find more information [http://www.complang.tuwien.ac.at/forth/faq/why-forth here].
= FCode =
FCode is a Forth dialect compliant to ANS Forth, that is available in two different forms: source and bytecode. FCode bytecode is the compiled form of FCode source.
= Why bytecode? =
Bytecode is small and efficient. And an evaluator (bytecode virtual machine) is almost trivial to implement. For example, putting a 1 to the stack only takes one byte in an FCode bytecode binary. This is especially valuable on combined system or expansion hardware roms where the available space is limited.
b38da3375e862c787bf4c5860aa8998c17d0db65
FlashRom
0
25
331
2006-10-06T10:53:42Z
Stepan
2
wikitext
text/x-wiki
__NOTOC__
= Flash Updates in Linux =
Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update.
Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://linuxbios.org LinuxBIOS project] and evolved to work with non-SIS chipsets.
[[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel.
e738031a7d228a8701b448a9d58c5acf59c24926
332
331
2006-10-06T11:00:31Z
Stepan
2
/* Flash Updates in Linux */
wikitext
text/x-wiki
__NOTOC__
= Flash Updates in Linux =
Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update.
Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://linuxbios.org LinuxBIOS project] and evolved to work with non-SIS chipsets.
[[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel.
You can download the latest version of '''flashrom''' [http://www.openbios.org/viewcvs/trunk/LinuxBIOSv2/util/flashrom.tar.gz?view=tar from the LinuxBIOSv2 svn repository]
0508896fb1de9690ec15d56567d50e615f559a58
OpenBIOS
0
16
137
136
2006-10-06T11:03:16Z
Stepan
2
/* /dev/bios */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
2c6b90fed2721fa096cf63dd9367275b73050162
138
137
2006-10-06T11:03:38Z
Stepan
2
/* kernel */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
9e2461e206eeee35844309f13a7bbf176c9a61a2
139
138
2006-10-06T11:03:51Z
Stepan
2
/* toke */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
05a74f4a198a9b2760bd76581c1c51bd808a2886
140
139
2006-10-06T11:04:01Z
Stepan
2
/* detok */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/data/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
7318abc46c537571f15e214cefd972ea9c389770
141
140
2006-10-06T11:04:35Z
Stepan
2
/* FCode Suite */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [FCODE suite|FCode Suite page] (2006-08-08)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/data/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
5654bd7e0bc79937819dd45e3aaca945173e7fcd
142
141
2006-10-06T11:04:49Z
Stepan
2
/* FCode Suite */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/data/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
ccf62cb02ba91aac4f2d76a4bee5505b15d2187c
143
142
2006-10-06T11:05:05Z
Stepan
2
/* FCode Suite */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/data/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
11c21c7b1716330b65831c701ec74499a908ea57
144
143
2006-10-06T11:05:20Z
Stepan
2
/* OpenBIOS */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/data/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/data/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
a234af1afc98aa3b5744484a8a351cb42c810dbc
145
144
2006-10-14T22:20:40Z
Stepan
2
/* OpenBIOS */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/data/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
b599c34c5d75def75b8c05bd99c02c761c0219f4
146
145
2006-10-14T22:21:47Z
Stepan
2
/* detok */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
74a07f324db0d3073645a1e6b9f2742ccaa8da9f
Welcome to OpenBIOS
0
2
20
19
2006-10-06T11:12:59Z
Stepan
2
wikitext
text/x-wiki
__NOTOC__
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
== News ==
'''FCODE suite 1.0.1 available''' (2006-09-21)
Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released their OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]].
[[News|[older news]]]
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
dbd9428aed0d85274cbed4c32aae75545f1cddba
21
20
2006-10-10T13:03:13Z
Stepan
2
wikitext
text/x-wiki
__NOTOC__
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
'''FCODE suite 1.0.1 available''' (2006-09-21)
Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released their OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]].
[[News|[older news]]]
|}
6e34d9713be66cac35988221e9f1d1efc463a3b2
22
21
2006-10-10T13:04:06Z
Stepan
2
/* News */
wikitext
text/x-wiki
__NOTOC__
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.1 available''' (2006-09-21)
Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released their OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]].
[[News|[older news]]]
</small>
|}
60c22ff959d8200903f6ed1712280346e12228d0
23
22
2006-10-10T13:07:25Z
Stepan
2
/* News */
wikitext
text/x-wiki
__NOTOC__
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by coresystems GmbH
'''FCODE suite 1.0.1 available''' (2006-09-21)
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]].
[[News|[older news]]]
</small>
|}
26c22ba76a42b6f07d753b3a774c92ab67e44a29
24
23
2006-10-10T13:09:08Z
Stepan
2
/* News */
wikitext
text/x-wiki
__NOTOC__
OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]].
[[News|[older news]]]
</small>
|}
acabffd361717026a72381003c77d46ee6624cf9
25
24
2006-10-10T13:10:38Z
Stepan
2
wikitext
text/x-wiki
__NOTOC__
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]].
[[News|[older news]]]
</small>
|}
64b7738f2d8fd944cf7549922d4f99dceeba9889
26
25
2006-10-10T13:11:37Z
Stepan
2
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]].
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
83203456b83ee92ea65c3a3cad62cafd7e81b7d9
News
0
24
322
321
2006-10-06T11:13:18Z
Stepan
2
wikitext
text/x-wiki
'''FCODE suite 1.0.1 available''' (2006-09-21)
Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released their OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
'''older news have not been added to the wiki yet. please notify [[User:Stepan|Stefan Reinauer]] if you need those.'''
05714d3853f05f53c2dfffafd8f3cc7baf33d21b
323
322
2006-10-06T11:20:12Z
Stepan
2
wikitext
text/x-wiki
'''FCODE suite 1.0.1 available''' (2006-09-21)
Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released their OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
'''Sparc32 support in development''' (2006-05-05)
OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project.
'''OpenBIOS switched to Subversion''' (2006-04-26)
See the [[Download|development repository]] for more information.
'''older news have not been added to the wiki yet. please notify [[User:Stepan|Stefan Reinauer]] if you need those.'''
6efb88e24ebd447e3b7f5edb518c44c2473a49c7
324
323
2006-10-06T11:38:26Z
Stepan
2
wikitext
text/x-wiki
'''FCODE suite 1.0.1 available''' (2006-09-21)
Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released their OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
'''Sparc32 support in development''' (2006-05-05)
OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project.
'''OpenBIOS switched to Subversion''' (2006-04-26)
See the [[Download|development repository]] for more information.
'''Bugfix version of tokenizer toke''' (2005-10-15)
Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New version of toke''' (2005-10-05)
Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New versions of toke and detok''' (2005-03-10)
New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1.
'''Stallman calls for action on Free BIOS''' (2005-02-26)
FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS.
''' Portability and cross development''' (2005-01-12)
OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC.
'''OpenBIOS boots, part II'''
(2004-08-01)
After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq.
'''Linux Tag'''
(2004-06-27)
The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver.
'''OpenBIOS boots'''
(2004-05-23)
After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86).
'''IDE support'''
(2004-01-23)
Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon.
'''Device and Client Interface'''
(2004-01-10)
OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux.
'''Bitkeeper repository'''
(2003-12-20)
Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree.
'''Toke and Detok update'''
(2003-11-29)
Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now.
'''OpenBIOS forth kernel 1.1'''
(2003-10-12)
After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system.
'''OpenBIOS forth kernel released'''
(2003-09-16)
After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain".
'''New domain: openbios.org!'''
(2003-08-23)
We got it! After many years of hazzling with a domain grabber we finally got the domain openbios.org.
'''dictionary dumping'''
(2002-10-16)
OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[mailing list|mailing list archive]].
'''LinuxFund.org'''
(2002-07-04)
OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project.
'''toke and detok update'''
(2002-05-26)
Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs.
'''toke 0.2 released'''
(2002-03-20)
The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing.
'''toke 0.1 released'''
(2002-03-04)
Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it.
'''detok 0.3 released'''
(2002-02-26)
The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%.
'''/dev/bios 0.3.2 released'''
2002-02-19
After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets. See the /dev/bios page for details.
'''new version of /dev/bios available'''
2002-02-15
The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets.
'''new version of feval released'''
2001-12-16
FCode evaluator feval-0.2.6 released. This is a bug fix release. Check the status page for more details.
'''Talk to us LIVE!'''
2001-12-03
Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone)
'''new version of detok released'''
2001-12-02
FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details.
'''OpenBIOS is now under control of CVS'''
2001-11-12
The OpenBIOS development CVS is up and running.
'''new version of feval released'''
2001-11-08
FCode evaluator feval-0.2.5 released. This version has preliminary package support. Check the status page for more details.
'''new version of detok released'''
2001-10-15
FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error.
'''new version of detok and feval released''' (2001-09-16)
Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now.
'''we now have a detokenizer''' (2001-09-09)
There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite.
'''general news on bios-coding''' (2000-02-13)
The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/.
'''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.'''
1a5f175af92f9ff411d879bfb5f40ec89ff7b60f
325
324
2006-10-06T12:28:03Z
Stepan
2
wikitext
text/x-wiki
'''FCODE suite 1.0.1 available''' (2006-09-21)
Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released their OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
'''Sparc32 support in development''' (2006-05-05)
OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project.
'''OpenBIOS switched to Subversion''' (2006-04-26)
See the [[Download|development repository]] for more information.
'''Bugfix version of tokenizer toke''' (2005-10-15)
Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New version of toke''' (2005-10-05)
Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New versions of toke and detok''' (2005-03-10)
New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1.
'''Stallman calls for action on Free BIOS''' (2005-02-26)
FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS.
''' Portability and cross development''' (2005-01-12)
OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC.
'''OpenBIOS boots, part II'''
(2004-08-01)
After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq.
'''Linux Tag'''
(2004-06-27)
The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver.
'''OpenBIOS boots'''
(2004-05-23)
After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86).
'''IDE support'''
(2004-01-23)
Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon.
'''Device and Client Interface'''
(2004-01-10)
OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux.
'''Bitkeeper repository'''
(2003-12-20)
Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree.
'''Toke and Detok update'''
(2003-11-29)
Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now.
'''OpenBIOS forth kernel 1.1'''
(2003-10-12)
After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system.
'''OpenBIOS forth kernel released'''
(2003-09-16)
After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain".
'''New domain: openbios.org!'''
(2003-08-23)
We got it! After many years of hazzling with a domain grabber we finally got the domain [http://openbios.org/ openbios.org].
'''dictionary dumping'''
(2002-10-16)
OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[Mailinglist|mailing list archive]].
'''LinuxFund.org'''
(2002-07-04)
OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project.
'''toke and detok update'''
(2002-05-26)
Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs.
'''toke 0.2 released'''
(2002-03-20)
The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing.
'''toke 0.1 released'''
(2002-03-04)
Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it.
'''detok 0.3 released'''
(2002-02-26)
The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%.
'''/dev/bios 0.3.2 released'''
(2002-02-19)
After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets.
'''new version of /dev/bios available'''
(2002-02-15)
The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets.
'''new version of feval released'''
(2001-12-16)
FCode evaluator feval-0.2.6 released. This is a bug fix release.
'''Talk to us LIVE!'''
(2001-12-03)
Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone)
'''new version of detok released'''
(2001-12-02)
FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details.
'''OpenBIOS is now under control of CVS'''
(2001-11-12)
The OpenBIOS development CVS is up and running.
'''new version of feval released'''
(2001-11-08)
FCode evaluator feval-0.2.5 released. This version has preliminary package support.
'''new version of detok released'''
(2001-10-15)
FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error.
'''new version of detok and feval released''' (2001-09-16)
Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now.
'''we now have a detokenizer''' (2001-09-09)
There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite.
'''general news on bios-coding''' (2000-02-13)
The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/.
'''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.'''
cb544ab14350a2c155390f2d5106a0e3179ac70d
326
325
2006-10-10T13:08:12Z
Stepan
2
wikitext
text/x-wiki
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by coresystems GmbH
'''FCODE suite 1.0.1 available''' (2006-09-21)
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
'''Sparc32 support in development''' (2006-05-05)
OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project.
'''OpenBIOS switched to Subversion''' (2006-04-26)
See the [[Download|development repository]] for more information.
'''Bugfix version of tokenizer toke''' (2005-10-15)
Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New version of toke''' (2005-10-05)
Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New versions of toke and detok''' (2005-03-10)
New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1.
'''Stallman calls for action on Free BIOS''' (2005-02-26)
FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS.
''' Portability and cross development''' (2005-01-12)
OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC.
'''OpenBIOS boots, part II'''
(2004-08-01)
After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq.
'''Linux Tag'''
(2004-06-27)
The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver.
'''OpenBIOS boots'''
(2004-05-23)
After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86).
'''IDE support'''
(2004-01-23)
Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon.
'''Device and Client Interface'''
(2004-01-10)
OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux.
'''Bitkeeper repository'''
(2003-12-20)
Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree.
'''Toke and Detok update'''
(2003-11-29)
Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now.
'''OpenBIOS forth kernel 1.1'''
(2003-10-12)
After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system.
'''OpenBIOS forth kernel released'''
(2003-09-16)
After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain".
'''New domain: openbios.org!'''
(2003-08-23)
We got it! After many years of hazzling with a domain grabber we finally got the domain [http://openbios.org/ openbios.org].
'''dictionary dumping'''
(2002-10-16)
OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[Mailinglist|mailing list archive]].
'''LinuxFund.org'''
(2002-07-04)
OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project.
'''toke and detok update'''
(2002-05-26)
Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs.
'''toke 0.2 released'''
(2002-03-20)
The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing.
'''toke 0.1 released'''
(2002-03-04)
Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it.
'''detok 0.3 released'''
(2002-02-26)
The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%.
'''/dev/bios 0.3.2 released'''
(2002-02-19)
After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets.
'''new version of /dev/bios available'''
(2002-02-15)
The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets.
'''new version of feval released'''
(2001-12-16)
FCode evaluator feval-0.2.6 released. This is a bug fix release.
'''Talk to us LIVE!'''
(2001-12-03)
Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone)
'''new version of detok released'''
(2001-12-02)
FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details.
'''OpenBIOS is now under control of CVS'''
(2001-11-12)
The OpenBIOS development CVS is up and running.
'''new version of feval released'''
(2001-11-08)
FCode evaluator feval-0.2.5 released. This version has preliminary package support.
'''new version of detok released'''
(2001-10-15)
FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error.
'''new version of detok and feval released''' (2001-09-16)
Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now.
'''we now have a detokenizer''' (2001-09-09)
There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite.
'''general news on bios-coding''' (2000-02-13)
The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/.
'''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.'''
ac55d09ef69f78f6de54e662ee0b51ae96b4f23e
327
326
2006-10-10T13:08:43Z
Stepan
2
wikitext
text/x-wiki
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
'''Sparc32 support in development''' (2006-05-05)
OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project.
'''OpenBIOS switched to Subversion''' (2006-04-26)
See the [[Download|development repository]] for more information.
'''Bugfix version of tokenizer toke''' (2005-10-15)
Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New version of toke''' (2005-10-05)
Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New versions of toke and detok''' (2005-03-10)
New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1.
'''Stallman calls for action on Free BIOS''' (2005-02-26)
FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS.
''' Portability and cross development''' (2005-01-12)
OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC.
'''OpenBIOS boots, part II'''
(2004-08-01)
After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq.
'''Linux Tag'''
(2004-06-27)
The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver.
'''OpenBIOS boots'''
(2004-05-23)
After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86).
'''IDE support'''
(2004-01-23)
Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon.
'''Device and Client Interface'''
(2004-01-10)
OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux.
'''Bitkeeper repository'''
(2003-12-20)
Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree.
'''Toke and Detok update'''
(2003-11-29)
Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now.
'''OpenBIOS forth kernel 1.1'''
(2003-10-12)
After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system.
'''OpenBIOS forth kernel released'''
(2003-09-16)
After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain".
'''New domain: openbios.org!'''
(2003-08-23)
We got it! After many years of hazzling with a domain grabber we finally got the domain [http://openbios.org/ openbios.org].
'''dictionary dumping'''
(2002-10-16)
OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[Mailinglist|mailing list archive]].
'''LinuxFund.org'''
(2002-07-04)
OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project.
'''toke and detok update'''
(2002-05-26)
Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs.
'''toke 0.2 released'''
(2002-03-20)
The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing.
'''toke 0.1 released'''
(2002-03-04)
Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it.
'''detok 0.3 released'''
(2002-02-26)
The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%.
'''/dev/bios 0.3.2 released'''
(2002-02-19)
After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets.
'''new version of /dev/bios available'''
(2002-02-15)
The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets.
'''new version of feval released'''
(2001-12-16)
FCode evaluator feval-0.2.6 released. This is a bug fix release.
'''Talk to us LIVE!'''
(2001-12-03)
Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone)
'''new version of detok released'''
(2001-12-02)
FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details.
'''OpenBIOS is now under control of CVS'''
(2001-11-12)
The OpenBIOS development CVS is up and running.
'''new version of feval released'''
(2001-11-08)
FCode evaluator feval-0.2.5 released. This version has preliminary package support.
'''new version of detok released'''
(2001-10-15)
FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error.
'''new version of detok and feval released''' (2001-09-16)
Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now.
'''we now have a detokenizer''' (2001-09-09)
There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite.
'''general news on bios-coding''' (2000-02-13)
The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/.
'''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.'''
d1c80e9c2e7840fe71bf7ebe71b6ac0c165b60d1
Licensing
0
14
109
108
2006-10-06T13:03:44Z
WikiSysop
1
/* View the license */
wikitext
text/x-wiki
= OpenBIOS Licensing =
OpenBIOS is licensed under the GNU General Public License v2. If you adapt OpenBIOS to your needs, please contact us with your changes so that you can contribute your changes back to the community.
= Why GPL? =
We see the GPL giving OpenBIOS a big competitive advantage over other firmware solutions:
* As a hardware vendor you get the warranty that nobody hiddenly improves the code you have been contributing without giving those improvements back. Thus, GPL guarantees that you keep control over your work and contributions.
* End users / customers get great benefit from OpenBIOS being GPL licensed: The GPL insures customers that a given platform will act like all other OpenBIOS platforms. BSD is a negative marketing point where BIOS is concerned.
= View the license =
Have a look at the [[About:License complete license]]
3191c4f4b20d546307544587b8eb63011b0faa98
110
109
2006-10-06T13:03:59Z
WikiSysop
1
/* View the license */
wikitext
text/x-wiki
= OpenBIOS Licensing =
OpenBIOS is licensed under the GNU General Public License v2. If you adapt OpenBIOS to your needs, please contact us with your changes so that you can contribute your changes back to the community.
= Why GPL? =
We see the GPL giving OpenBIOS a big competitive advantage over other firmware solutions:
* As a hardware vendor you get the warranty that nobody hiddenly improves the code you have been contributing without giving those improvements back. Thus, GPL guarantees that you keep control over your work and contributions.
* End users / customers get great benefit from OpenBIOS being GPL licensed: The GPL insures customers that a given platform will act like all other OpenBIOS platforms. BSD is a negative marketing point where BIOS is concerned.
= View the license =
Have a look at the [[About:License|complete license]]
f1d2cd3ff8777ac18b0d3796ddd351f2fbaa2ee4
About:License
0
26
338
2006-10-06T13:07:17Z
WikiSysop
1
wikitext
text/x-wiki
= GNU GENERAL PUBLIC LICENSE =
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
== Preamble ==
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow.
== TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ==
'''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
'''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
'''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
'''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
'''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
'''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
'''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
'''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
'''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
'''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
'''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
== NO WARRANTY ==
'''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
'''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
one line to give the program's name and an idea of what it does.
Copyright (C) yyyy name of author
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'. This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.
The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written
by James Hacker.
signature of Ty Coon, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License.
82c58f498bf7e825389378e125fec42ec13e5c9f
339
338
2006-10-06T13:07:52Z
WikiSysop
1
/* GNU GENERAL PUBLIC LICENSE */
wikitext
text/x-wiki
__NOTOC__
= GNU GENERAL PUBLIC LICENSE =
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
== Preamble ==
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow.
== TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ==
'''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
'''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
'''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
'''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
'''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
'''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
'''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
'''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
'''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
'''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
'''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
== NO WARRANTY ==
'''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
'''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
one line to give the program's name and an idea of what it does.
Copyright (C) yyyy name of author
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'. This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.
The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written
by James Hacker.
signature of Ty Coon, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License.
c4db2f8c648f8ad2be4a3442dccac2daee775e15
340
339
2006-10-06T13:09:10Z
WikiSysop
1
/* GNU GENERAL PUBLIC LICENSE */
wikitext
text/x-wiki
__NOTOC__
= OpenBIOS Licensing =
OpenBIOS is covered by the General Public License V2.
= GNU GENERAL PUBLIC LICENSE =
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
== Preamble ==
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow.
== TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ==
'''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
'''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
'''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
'''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
'''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
'''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
'''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
'''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
'''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
'''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
'''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
== NO WARRANTY ==
'''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
'''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
one line to give the program's name and an idea of what it does.
Copyright (C) yyyy name of author
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'. This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.
The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written
by James Hacker.
signature of Ty Coon, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License.
5a0430565b16c59e0e20a8904da4adf76d5ac2af
341
340
2006-10-06T13:11:30Z
WikiSysop
1
/* TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION */
wikitext
text/x-wiki
__NOTOC__
= OpenBIOS Licensing =
OpenBIOS is covered by the General Public License V2.
= GNU GENERAL PUBLIC LICENSE =
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
== Preamble ==
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow.
== TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ==
'''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
'''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
'''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
:a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
:b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
:c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
'''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
:a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
:b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
:c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
'''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
'''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
'''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
'''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
'''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
'''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
'''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
== NO WARRANTY ==
'''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
'''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
one line to give the program's name and an idea of what it does.
Copyright (C) yyyy name of author
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'. This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.
The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written
by James Hacker.
signature of Ty Coon, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License.
cee025f36545d9c4cf63e11035e71cab3efe2db8
342
341
2006-10-06T13:12:49Z
WikiSysop
1
/* NO WARRANTY */
wikitext
text/x-wiki
__NOTOC__
= OpenBIOS Licensing =
OpenBIOS is covered by the General Public License V2.
= GNU GENERAL PUBLIC LICENSE =
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
== Preamble ==
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow.
== TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ==
'''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
'''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
'''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
:a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
:b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
:c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
'''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
:a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
:b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
:c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
'''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
'''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
'''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
'''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
'''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
'''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
'''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
== NO WARRANTY ==
'''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
'''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
= END OF TERMS AND CONDITIONS =
== How to Apply These Terms to Your New Programs ==
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
one line to give the program's name and an idea of what it does.
Copyright (C) yyyy name of author
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'. This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.
The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written
by James Hacker.
signature of Ty Coon, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License.
5c8c6682c3c847c67f64ee1a3e1650a7c11191ec
343
342
2006-10-06T13:13:32Z
WikiSysop
1
/* How to Apply These Terms to Your New Programs */
wikitext
text/x-wiki
__NOTOC__
= OpenBIOS Licensing =
OpenBIOS is covered by the General Public License V2.
= GNU GENERAL PUBLIC LICENSE =
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
== Preamble ==
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow.
== TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ==
'''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
'''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
'''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
:a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
:b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
:c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
'''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
:a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
:b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
:c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
'''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
'''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
'''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
'''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
'''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
'''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
'''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
== NO WARRANTY ==
'''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
'''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
= END OF TERMS AND CONDITIONS =
== How to Apply These Terms to Your New Programs ==
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
one line to give the program's name and an idea of what it does.
Copyright (C) yyyy name of author
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'. This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.
The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written
by James Hacker.
signature of Ty Coon, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License.
9dcfaa14472d8f7a068b4b33076ab2b79dd1d3ee
344
343
2006-10-06T13:14:55Z
WikiSysop
1
/* How to Apply These Terms to Your New Programs */
wikitext
text/x-wiki
__NOTOC__
= OpenBIOS Licensing =
OpenBIOS is covered by the General Public License V2.
= GNU GENERAL PUBLIC LICENSE =
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
== Preamble ==
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow.
== TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ==
'''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
'''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
'''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
:a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
:b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
:c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
'''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
:a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
:b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
:c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
'''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
'''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
'''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
'''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
'''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
'''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
'''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
== NO WARRANTY ==
'''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
'''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
= END OF TERMS AND CONDITIONS =
== How to Apply These Terms to Your New Programs ==
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
one line to give the program's name and an idea of what it does.
Copyright (C) yyyy name of author
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'. This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.
The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written
by James Hacker.
signature of Ty Coon, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the [http://www.fsf.org/licensing/licenses/lgpl.html GNU Lesser General Public License] instead of this License.
29b215cafe5001dfaedf62b6f3b272903e093b15
345
344
2006-10-06T13:15:37Z
WikiSysop
1
/* GNU GENERAL PUBLIC LICENSE */
wikitext
text/x-wiki
__NOTOC__
= OpenBIOS Licensing =
OpenBIOS is covered by the General Public License V2.
= GNU GENERAL PUBLIC LICENSE =
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
== Preamble ==
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow.
== TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ==
'''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
'''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
'''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
:a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
:b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
:c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
'''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
:a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
:b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
:c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
'''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
'''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
'''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
'''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
'''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
'''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
'''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
== NO WARRANTY ==
'''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
'''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
= END OF TERMS AND CONDITIONS =
== How to Apply These Terms to Your New Programs ==
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
one line to give the program's name and an idea of what it does.
Copyright (C) yyyy name of author
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'. This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.
The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written
by James Hacker.
signature of Ty Coon, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the [http://www.fsf.org/licensing/licenses/lgpl.html GNU Lesser General Public License] instead of this License.
f6818481b67362874725116e347b4eac22caca35
346
345
2006-10-06T15:08:20Z
WikiSysop
1
Protected "[[About:License]]": the license of OpenBIOS can not be changed [edit=sysop:move=sysop]
wikitext
text/x-wiki
__NOTOC__
= OpenBIOS Licensing =
OpenBIOS is covered by the General Public License V2.
= GNU GENERAL PUBLIC LICENSE =
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
== Preamble ==
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow.
== TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ==
'''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
'''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
'''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
:a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
:b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
:c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
'''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
:a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
:b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
:c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
'''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
'''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
'''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
'''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
'''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
'''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
'''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
== NO WARRANTY ==
'''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
'''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
= END OF TERMS AND CONDITIONS =
== How to Apply These Terms to Your New Programs ==
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
one line to give the program's name and an idea of what it does.
Copyright (C) yyyy name of author
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'. This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.
The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written
by James Hacker.
signature of Ty Coon, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the [http://www.fsf.org/licensing/licenses/lgpl.html GNU Lesser General Public License] instead of this License.
f6818481b67362874725116e347b4eac22caca35
Contact us
0
10
86
85
2006-10-06T13:18:05Z
WikiSysop
1
/* Internet Relay Chat */
wikitext
text/x-wiki
== The OpenBIOS Project ==
OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, documentation.
* need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this.
We of course appreciate any help, hints, patches, comments, etc.
NOTE: Please read our [[Project Statement]].
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome.
== Project Maintainer ==
The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]]
3d27bd86f39fe2af4cedb80c7192c1384ae2c74c
87
86
2006-10-06T13:18:19Z
WikiSysop
1
/* The OpenBIOS Project */
wikitext
text/x-wiki
__NOTOC__
== The OpenBIOS Project ==
OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, documentation.
* need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this.
We of course appreciate any help, hints, patches, comments, etc.
NOTE: Please read our [[Project Statement]].
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome.
== Project Maintainer ==
The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]]
69e5614319a6cdeb0c59bc8e7442b4f1defc4426
Template:Stub
10
27
347
2006-10-06T14:38:57Z
WikiSysop
1
wikitext
text/x-wiki
This is a stub
5c16df0442decb9bd4ce96c0497b1f093ec40dc8
348
347
2006-10-06T14:39:58Z
WikiSysop
1
wikitext
text/x-wiki
{{Message_box|
id = translateme|
backgroundcolor = beige|
signalcolor = orange|
signal =<pre>{{stub}}</pre>|
heading = This article is not yet written but started.|
message = It may be confusing or it contains not enough information it should have to explain matters. People are invited to expand it. }}
[[Category:Stub]]
6315740da7699af3edbe958dfc1dbac0510fa615
Template:Message box
10
28
349
2006-10-06T14:45:09Z
WikiSysop
1
wikitext
text/x-wiki
<center><div style="text-align: center; margin: 0 10% 1em 10%;">
{| class="notice noprint" id="{{{id}}}" style="background: {{{backgroundcolor}}}; border: 1px solid #aaa; padding: 0.1em; margin: 0.5em auto;"
|-
| valign="top" style="padding: 0.1em" | [[Image:{{{image}}}|45px| ]]
| style="padding: 0.1em" | '''{{{heading}}}'''<br><div style="font-size: 90%;">{{{message}}}</div>
|}
</div></center><noinclude>
[[Category:Wikipedia templates]]
[[cs:Šablona:Zpráva]]
[[vi:Tiêu bản:Message box]]
</noinclude>
b30a406a019f2d2c2977da235b919feb4612fcbc
350
349
2006-10-06T14:46:08Z
WikiSysop
1
wikitext
text/x-wiki
<center><div style="text-align: center; margin: 0 10% 1em 10%;">
{| class="notice noprint" id="{{{id}}}" style="background: {{{backgroundcolor}}}; border: 1px solid #aaa; padding: 0.1em; margin: 0.5em auto;"
|-
| valign="top" style="padding: 0.1em" | [[Image:{{{image}}}|45px| ]]
| style="padding: 0.1em" | '''{{{heading}}}'''<br><div style="font-size: 90%;">{{{message}}}</div>
|}
</div></center><noinclude>
[[Category:Wikipedia templates]]
</noinclude>
c03f9e0dee66b83e2a59212be0dddeda6645d148
351
350
2006-10-06T15:05:54Z
WikiSysop
1
wikitext
text/x-wiki
<center><div style="text-align: center; margin: 0 10% 1em 10%;">
{| class="notice noprint" id="{{{id}}}" style="background: {{{backgroundcolor}}}; border: 1px solid #aaa; padding: 0.1em; margin: 0.5em auto;"
|-
| valign="top" style="padding: 0.1em" | STUB
| style="padding: 0.1em" | '''{{{heading}}}'''<br><div style="font-size: 90%;">{{{message}}}</div>
|}
</div></center>
<includeonly>[[Category:Stubs]]</includeonly>
406c04191519fe555c77f0e50e09198ab8e2da21
352
351
2006-10-06T15:06:54Z
WikiSysop
1
wikitext
text/x-wiki
<center><div style="text-align: center; margin: 0 10% 1em 10%;">
{| class="notice noprint" id="{{{id}}}" style="background: {{{backgroundcolor}}}; border: 1px solid #aaa; padding: 0.1em; margin: 0.5em auto;"
|-
| valign="top" style="padding: 0.1em" |
| style="padding: 0.1em" | '''{{{heading}}}'''<br><div style="font-size: 90%;">{{{message}}}</div>
|}
</div></center>
<includeonly>[[Category:Stubs]]</includeonly>
cbdf270b54613c6db08c2c59f17897265b94f622
FlashRom
0
25
333
332
2006-10-06T15:07:09Z
WikiSysop
1
wikitext
text/x-wiki
{{stub}}
__NOTOC__
= Flash Updates in Linux =
Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update.
Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://linuxbios.org LinuxBIOS project] and evolved to work with non-SIS chipsets.
[[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel.
You can download the latest version of '''flashrom''' [http://www.openbios.org/viewcvs/trunk/LinuxBIOSv2/util/flashrom.tar.gz?view=tar from the LinuxBIOSv2 svn repository]
7de4e4ca3d314fea6155557358a89c6d8c41d398
FCODE suite
0
17
231
230
2006-10-14T21:54:42Z
Stepan
2
/* Downloading the OpenBIOS FCode Suite */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself.
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=94 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2]
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
fe7f29ce1bd93e358df867b1a7a1e145f2153759
232
231
2006-10-14T21:56:16Z
Stepan
2
/* Todo */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself.
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=94 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
f6c5be53d4bd428b0940a737e0b43a812dd9ccce
233
232
2006-10-14T21:56:32Z
Stepan
2
/* Todo */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself.
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=94 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
9c597a5cf4d671a9f4a335866d1293a956d89e44
234
233
2006-10-14T21:57:45Z
Stepan
2
/* Source Code */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself.
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
d4dc42bd9d7b7aa06c88ef034db8a54ea387e925
235
234
2006-10-14T22:00:30Z
Stepan
2
/* The suite of unit-test cases */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself.
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewcvs/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewcvs/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and
* [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison.
Again, there is commentation in each explaining how it is used.
Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2]
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
f029fea6f402ef36845cc01d2925e0dd9634e157
236
235
2006-10-14T22:03:31Z
Stepan
2
/* Test Tools */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself.
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewcvs/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewcvs/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewcvs/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewcvs/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
bf11f08c2d0192f70c9d6758396c42c5e09a2d09
237
236
2006-10-14T22:19:10Z
Stepan
2
/* What is the OpenBIOS FCODE Suite? */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the OpenBIOS svn repository. '''Note:''' The binaries on this web page are built from a non-official older version of the tree. We hope that we will be able to provide binaries from the official source tree for version 1.0.2 or 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself.
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewcvs/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewcvs/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewcvs/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewcvs/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
1ef3e594112b19255e22bac30ec40f9e1aa0591c
OpenBIOS
0
16
147
146
2006-10-14T22:22:27Z
Stepan
2
/* toke */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
3f822f1f7f90e15c6f1ec51768ad3a1da1008902
148
147
2006-10-14T22:23:57Z
Stepan
2
/* Development Environment */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz].
8ea9207cbda0e11e1e375c1b04fe8c6222a0a187
149
148
2006-10-14T22:25:36Z
Stepan
2
/* romheaders */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
ae4366cc100579e97102b0f2ce8d923556992c47
150
149
2006-10-14T22:25:51Z
Stepan
2
/* Utilities */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
a5dde405489f71f71fb82d9192b89971ea4a61dc
151
150
2006-10-14T22:26:04Z
Stepan
2
/* Development Environment */
wikitext
text/x-wiki
== OpenBIOS - Code Releases ==
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
2cfbe83d9538e3eef414549c4aa3739ebe11a0f2
152
151
2006-10-14T22:26:21Z
Stepan
2
/* OpenBIOS - Code Releases */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
== OpenBIOS ==
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
b377d18265a16222a863c2dcd46467e60c9d5314
153
152
2006-10-14T22:26:39Z
Stepan
2
/* OpenBIOS */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
== Development Environment ==
=== FCode Suite ===
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== kernel ===
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86.
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
102bc27cbd7df80a577eb81b217fe5f8c3a09f9d
154
153
2006-10-14T22:27:06Z
Stepan
2
/* Development Environment */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== kernel ==
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
c0fa501e85037354bbfc7e2e4eda119244f93bf6
155
154
2006-10-14T22:27:15Z
Stepan
2
/* kernel */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Kernel ==
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86.
== Utilities ==
=== /dev/bios ===
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
0ae2b2be421adadfd4888e694f4cb386e6453bdc
156
155
2006-10-14T22:28:26Z
Stepan
2
/* /dev/bios */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Kernel ==
Download the latest release of the OpenBIOS Forth kernel BeginAgain.
Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86.
== Utilities ==
586e411d22032a567595f814d96b18e582478786
157
156
2006-10-14T22:29:14Z
Stepan
2
/* Development Environment */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
b04a4b7e743cbc75c86125c62a4f6cf1ac3f509b
158
157
2006-10-14T22:30:54Z
Stepan
2
/* OpenBIOS */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel BeginAgain.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling and lots of other nifty features. BeginAgain 1.1 is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
633ae250c746030db11a68a983ca480ae90b7b80
159
158
2006-10-14T22:31:36Z
Stepan
2
/* Kernel */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
dda12d18597fc7674f0d34c149eb1e4594cbaf6b
160
159
2006-10-14T22:33:53Z
Stepan
2
/* OpenBIOS */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
7d1734c9cfdb2385c84304976eef0a09c26c1760
Contact us
0
10
88
87
2006-10-14T22:34:37Z
Stepan
2
wikitext
text/x-wiki
== The OpenBIOS Project ==
OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, documentation.
* need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this.
We of course appreciate any help, hints, patches, comments, etc.
NOTE: Please read our [[Project Statement]].
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome.
== Project Maintainer ==
The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]]
__NOTOC__
917af75eeee4819b1bdde470587fee4db3070635
File:Stefan.jpg
6
29
353
2006-10-14T22:39:02Z
Stepan
2
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
User:Stepan
2
18
276
275
2006-10-14T22:39:37Z
Stepan
2
/* About Stefan Reinauer */
wikitext
text/x-wiki
=== About Stefan Reinauer ===
Stefan founded the OpenBIOS project in 1997 and works on firmware related issues ever since. His company [http://www.coresystems.de/ coresystems GmbH] offers a variety of firmware and lowlevel related services.
[[Image:Stefan.jpg]]
See http://www.linuxbios.org/ for more information on LinuxBIOS
Contact Stefan Reinauer at <stepan at coresystems dot eu>
Have a look at Stefan's private web page at http://www.stefan-reinauer.de/
33395a301cfa1ed35c74ab6b917b603614ab0a20
Credits
0
13
102
101
2006-10-16T09:26:39Z
Daniele
4
wikitext
text/x-wiki
Development contributions
Development contributions
* Stefan Reinauer (project coordination, main development)
* Patrick Mauritz (initial kernel work)
* Samuel Rydh (forth interfaces, MOL port, ...)
* Greg Watson (briq port)
* David Paktor (improving Toke)
* Chen-Chau Chu (ppc fixes)
* Tim Barrett (detok patches)
* Krishna Myneni (permission to include kForth examples with toke)
Hardware/Funding
* Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development.
* [http://www.linuxfund.org/ LinuxFund.org] chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work!
* [http://www.newisys.com/ Newisys] funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openbios.org and www.linuxbios.org.
* [http://sase.de/ Daniele Frijia] for donating a Motorola PPC-machine
If you or somebody else is missing on this list, send an email to Stefan Reinauer
22a2cfbc7649963a64c852f053ef4cbf4d347140
On the Net
0
20
301
300
2006-10-18T09:46:36Z
Stepan
2
/* Other Open Source Firmware Implementations */
wikitext
text/x-wiki
__NOTOC__
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://linuxbios.org/ LinuxBIOS])
== Other Open Source Firmware Implementations ==
* [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation
* redboot
* SLOF
* Open Hackware
* SUN OpenBoot
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* [http://www.qemu.com/ QEMU]
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux
* Hypervisor
* ...
f63f032551ecfe3ac27812e352ea18b244d85701
FlashRom
0
25
334
333
2006-10-23T20:37:36Z
Stepan
2
/* Flash Updates in Linux */
wikitext
text/x-wiki
{{stub}}
__NOTOC__
= Flash Updates in Linux =
Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update.
Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://linuxbios.org LinuxBIOS project] and evolved to work with non-SIS chipsets.
[[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel.
You can download the latest version of '''flashrom''' [http://www.openbios.org/viewvc/trunk/LinuxBIOSv2/util/flashrom.tar.gz?view=tar from the LinuxBIOSv2 svn repository]
b773d1378db682f3a4e4085274d9f6d2406701e1
FCODE suite
0
17
238
237
2006-10-23T20:43:42Z
Stepan
2
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the OpenBIOS svn repository. '''Note:''' The binaries on this web page are built from a non-official older version of the tree. We hope that we will be able to provide binaries from the official source tree for version 1.0.2 or 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself.
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
f77f802df4ea601991c5a606e854edc7bb1a7033
239
238
2006-10-30T16:15:20Z
Stepan
2
/* What is the OpenBIOS FCODE Suite? */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.1
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
3f5d3fd03e9f70818265532f2d20f561b782bdad
240
239
2006-10-30T17:00:19Z
Stepan
2
/* Documentation */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
647c9f3beb382bebebcff7e14301793856878ea4
241
240
2006-10-30T17:17:05Z
Stepan
2
/* Local Value Support */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup
development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup
combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup
allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar
localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
d870330de1b1e748516d7646a595c0f3e499a4ba
242
241
2006-10-30T17:17:37Z
Stepan
2
/* Local Value Support */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar
localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
575620a7d3808132fb633fed39fcadf4656a9b72
243
242
2006-10-30T17:18:38Z
Stepan
2
/* Local Value Support */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
11e416d48d9ab6962537e3e20022247c93d45a34
244
243
2006-10-30T17:20:06Z
Stepan
2
/* Todo */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15).
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
621845f28f374bd1918045fa56538cf0d2b4fdd9
245
244
2006-10-30T17:21:05Z
Stepan
2
/* The suite of unit-test cases */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2]
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2]
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
825c048bf67bac0375cf7716a8530f47e169d7ee
246
245
2006-10-30T17:24:20Z
Stepan
2
/* Unit-Test Suite Logs */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
All these are part of the FCODE suite 1.0.2 release.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.1 is not yet available
fdb3a6228510fe9c1f62d2f00b7e2eb25cd7d82d
247
246
2006-10-30T17:24:34Z
Stepan
2
/* Coverage Reports */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz]
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
All these are part of the FCODE suite 1.0.2 release.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.2 is not yet available
ed807b1a4cce052feeea7a9e826779d34b64b6b7
248
247
2006-10-30T17:25:36Z
Stepan
2
/* The suite of unit-test cases */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
The test tools are also part of the test suite archive above
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
All these are part of the FCODE suite 1.0.2 release.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.2 is not yet available
24d9f938707b62dc36fd5a9f2cf9ba1a60fa2a77
249
248
2006-10-30T17:25:55Z
Stepan
2
/* Test Tools */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
All these are part of the FCODE suite 1.0.2 release.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.2 is not yet available
74b020adf48f48364347c51f1c5909b59614fffa
250
249
2006-10-30T17:26:25Z
Stepan
2
/* Unit-Test Suite Logs */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.2 is not yet available
b25813b8aac1a1ae5a7fd7b7045aa93445ce4183
251
250
2006-10-30T17:27:20Z
Stepan
2
/* The suite of unit-test cases */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.2 is not yet available
02d09441eb7bf5fabc255e21bb51b2ff5125d8e4
252
251
2006-10-30T17:28:59Z
Stepan
2
/* Source Code */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.1]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.2 is not yet available
dea39af73ba3f98483e2ee01711d08b948031567
253
252
2006-10-30T17:29:45Z
Stepan
2
/* Source Code */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.2 is not yet available
c130f1c8d21f99a3287e6808311efdfb7b712502
254
253
2006-10-30T17:30:07Z
Stepan
2
/* Downloading the OpenBIOS FCode Suite */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.2 is not yet available
f5c982ac8e6047a0f50b72be27a606923f16fd8f
255
254
2006-10-30T17:31:47Z
Stepan
2
/* Executables for three platforms */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.2 is not yet available
383eb5603e636ca8ddba8c744514dd8db6254f9f
256
255
2006-10-30T17:50:48Z
Stepan
2
/* Source Code */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2]
A hand crafted document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ the changes since version 1.0.2]
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.2 is not yet available
6da64eaefc19f14aafdbba001fcc3d79d2647f38
257
256
2006-10-30T17:51:05Z
Stepan
2
/* Source Code */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2]
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ the changes since version 1.0.1].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.2 is not yet available
3492d27df7dffd483b83d439ed97684b7d974f0d
258
257
2006-10-30T18:00:29Z
Stepan
2
/* Source Code */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2]
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
* TODO: coverage report for toke 1.0.2 is not yet available
2401d9d6c6d7ce4cacb45c2985e536e99c60b1ae
259
258
2006-10-30T22:03:15Z
Stepan
2
/* Coverage Reports */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2]
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
bee63d174729829def0ed7e62a1d3f6a7448a6ca
260
259
2006-10-30T23:07:16Z
Stepan
2
/* Source Code */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=113 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2]
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this.
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
0aaa9256711a9c690be3e64dd76e9bba1a397b39
261
260
2006-10-30T23:23:23Z
Stepan
2
/* The suite of unit-test cases */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=113 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2]
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
Run the unit-test cases with
$ make tests
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
0b5ec11df0d85077bd6f3f0b21780f28e1927407
262
261
2006-10-30T23:33:04Z
Stepan
2
/* Executables for three platforms */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=113 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2]
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
Run the unit-test cases with
$ make tests
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
6eaac9e6f481a75b21d0a00e25ea6d662b99e976
News
0
24
328
327
2006-10-30T17:48:01Z
Stepan
2
wikitext
text/x-wiki
'''FCODE suite 1.0.2 released''' (2006-10-30)
David Paktor sent a new fork of the [[FCODE suite|OpenBIOS FCODE suite]]. After only a couple of days we finally got this merged into the official code base.
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
'''Sparc32 support in development''' (2006-05-05)
OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project.
'''OpenBIOS switched to Subversion''' (2006-04-26)
See the [[Download|development repository]] for more information.
'''Bugfix version of tokenizer toke''' (2005-10-15)
Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New version of toke''' (2005-10-05)
Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New versions of toke and detok''' (2005-03-10)
New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1.
'''Stallman calls for action on Free BIOS''' (2005-02-26)
FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS.
''' Portability and cross development''' (2005-01-12)
OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC.
'''OpenBIOS boots, part II'''
(2004-08-01)
After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq.
'''Linux Tag'''
(2004-06-27)
The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver.
'''OpenBIOS boots'''
(2004-05-23)
After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86).
'''IDE support'''
(2004-01-23)
Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon.
'''Device and Client Interface'''
(2004-01-10)
OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux.
'''Bitkeeper repository'''
(2003-12-20)
Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree.
'''Toke and Detok update'''
(2003-11-29)
Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now.
'''OpenBIOS forth kernel 1.1'''
(2003-10-12)
After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system.
'''OpenBIOS forth kernel released'''
(2003-09-16)
After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain".
'''New domain: openbios.org!'''
(2003-08-23)
We got it! After many years of hazzling with a domain grabber we finally got the domain [http://openbios.org/ openbios.org].
'''dictionary dumping'''
(2002-10-16)
OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[Mailinglist|mailing list archive]].
'''LinuxFund.org'''
(2002-07-04)
OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project.
'''toke and detok update'''
(2002-05-26)
Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs.
'''toke 0.2 released'''
(2002-03-20)
The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing.
'''toke 0.1 released'''
(2002-03-04)
Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it.
'''detok 0.3 released'''
(2002-02-26)
The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%.
'''/dev/bios 0.3.2 released'''
(2002-02-19)
After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets.
'''new version of /dev/bios available'''
(2002-02-15)
The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets.
'''new version of feval released'''
(2001-12-16)
FCode evaluator feval-0.2.6 released. This is a bug fix release.
'''Talk to us LIVE!'''
(2001-12-03)
Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone)
'''new version of detok released'''
(2001-12-02)
FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details.
'''OpenBIOS is now under control of CVS'''
(2001-11-12)
The OpenBIOS development CVS is up and running.
'''new version of feval released'''
(2001-11-08)
FCode evaluator feval-0.2.5 released. This version has preliminary package support.
'''new version of detok released'''
(2001-10-15)
FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error.
'''new version of detok and feval released''' (2001-09-16)
Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now.
'''we now have a detokenizer''' (2001-09-09)
There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite.
'''general news on bios-coding''' (2000-02-13)
The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/.
'''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.'''
a242b2113b751865c9265a8d13880f9ed330bb47
Welcome to OpenBIOS
0
2
27
26
2006-10-30T17:49:30Z
Stepan
2
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others.
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
dce01d8d7d8991a15cebd5710baf18646e9ad63d
Data/fcodesuite/Documents/TokenizerNewFeatures.htm
0
30
354
2006-12-01T19:07:56Z
DavidPaktor
3
This should be a sym-link...
wikitext
text/x-wiki
This should be a link to [[http://www.openbios.org/data/fcodesuite/Documents/toke.html]]
8319f597a1f23d2b00fc24cc7a17d931cf5e58b5
355
354
2006-12-01T19:11:33Z
DavidPaktor
3
wikitext
text/x-wiki
This should be a link to the Tokenizer New Features Document [[http://www.openbios.org/data/fcodesuite/Documents/toke.html]]
ee194c938009775944220fe3f8fa9fe7a7b151ec
SmartFirmware
0
31
356
2006-12-11T09:03:27Z
Stepan
2
wikitext
text/x-wiki
== Introduction ==
In 2006 [http://codegen.com/] released their Open Firmware implementation under a BSL like license. Their code, entirely written in ANSI C, contains the following components:
* [http://www.codegen.com/SmartFirmware/index.html SmartFirmware™]: an ANSI C implementation of the IEEE-1275 Open Firmware boot firmware standard. Dramatically reduce and ease your firmware development and system bring-up times and costs.
* An [http://www.codegen.com/SmartFirmware/ccfcode.html ANSI C compiler] that generates Open Firmware compatible Forth/Fcode makes it easy to develop drivers for PCI cards and PMC modules.
627aa3cdbb03145b2c34ee0d6b73814948613f78
SmartFirmware
0
31
357
356
2006-12-11T09:15:14Z
Stepan
2
/* Introduction */
wikitext
text/x-wiki
== Introduction ==
In 2006 [http://codegen.com/ CodeGen, Inc] released their Open Firmware implementation under a BSL like license. Their code, entirely written in ANSI C, contains the following components:
* [http://www.codegen.com/SmartFirmware/index.html SmartFirmware™]: an ANSI C implementation of the IEEE-1275 Open Firmware boot firmware standard. Dramatically reduce and ease your firmware development and system bring-up times and costs.
* An [http://www.codegen.com/SmartFirmware/ccfcode.html ANSI C compiler] that generates Open Firmware compatible Forth/Fcode makes it easy to develop drivers for PCI cards and PMC modules.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=SmartFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/smartfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/smartfirmware -r 1
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/smartfirmware-svn/ smartfirmware</nowiki>
977295578c968333579a8a6b3e7de14d3aa9b222
Welcome to OpenBIOS
0
2
28
27
2006-12-11T09:15:59Z
Stepan
2
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, [[SmartFirmware|CodeGen]], Apple, IBM and others.
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
caf75a9f636666dd2e5a3c1a3c89cc7823dd80e2
29
28
2006-12-11T09:20:01Z
Stepan
2
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
a3b20a1f3f9dc2d158782876a7d813833dc20db6
30
29
2006-12-11T10:17:04Z
Stepan
2
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
cf4ae7bd6b28e4a1384f9f00b8fa04fe6509169a
31
30
2006-12-11T10:20:52Z
Stepan
2
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
OpenBIOS relies on an additional low-level firmware for hardware bringup, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
5022c95d0036aa37f27edc52725f76dc0131c373
32
31
2007-01-08T06:28:59Z
DavidPaktor
3
Added mail-link to my name in two places.
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
OpenBIOS relies on an additional low-level firmware for hardware bringup, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
eda36295bb546004d8e4344f2555154e8f9249f5
33
32
2007-01-09T15:12:03Z
Stepan
2
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
OpenBIOS relies on an additional low-level firmware for hardware bring-up, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
8344c58bfda3fafb0f16c6c92a1cb7d167c7b219
34
33
2007-01-09T15:12:43Z
Stepan
2
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
OpenBIOS relies on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
07cb0df9af62e07f1edcf3b890acb34bdc36da48
35
34
2007-01-13T17:40:10Z
WikiSysop
1
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
OpenBIOS relies on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
acf6bdf74ca52dc1e58a766247fd01e20f5c866f
36
35
2007-01-13T17:51:34Z
WikiSysop
1
wikitext
text/x-wiki
= Welcome to Open Firmware =
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
OpenBIOS relies on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
656abb8e446d97abd7a18b173158bb7ae5697ffe
37
36
2007-01-13T17:53:31Z
WikiSysop
1
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
OpenBIOS relies on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Project Statement ==
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
acf6bdf74ca52dc1e58a766247fd01e20f5c866f
38
37
2007-01-13T18:02:11Z
WikiSysop
1
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
0a253e3d918d8007327e7e71e07d36a5f6366c74
39
38
2007-04-26T22:30:00Z
Stepan
2
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
32f4c8cc228becb87bf7d7acf25da7cbabfa965f
OpenBOOT
0
32
360
2006-12-11T09:18:19Z
Stepan
2
wikitext
text/x-wiki
== Introduction ==
In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenBoot ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openboot/
if you want a specific revision:
$ svn co svn://openbios.org/openboot -r 1
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki>
6404c0a09136e110257f01b1a8ba99ecccad90a8
361
360
2006-12-11T09:18:46Z
Stepan
2
/* Download */
wikitext
text/x-wiki
== Introduction ==
In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenBOOT ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openboot/
if you want a specific revision:
$ svn co svn://openbios.org/openboot -r 1
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki>
29899607fb350bef050d96abc08bf87cb75d280b
362
361
2007-01-13T17:39:52Z
WikiSysop
1
[[OpenBoot]] moved to [[OpenBOOT]]
wikitext
text/x-wiki
== Introduction ==
In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenBOOT ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openboot/
if you want a specific revision:
$ svn co svn://openbios.org/openboot -r 1
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki>
29899607fb350bef050d96abc08bf87cb75d280b
Open Firmware
0
33
365
2006-12-11T09:36:45Z
Stepan
2
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
ed2c7f74a8d0969cb8f03d6866397f9da914f71d
News
0
24
329
328
2007-01-08T06:39:17Z
DavidPaktor
3
Added email contact to my name in three places on this page, too.
wikitext
text/x-wiki
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:dlpaktor@netscape.net David Paktor] sent a new fork of the [[FCODE suite|OpenBIOS FCODE suite]]. After only a couple of days we finally got this merged into the official code base.
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:dlpaktor@netscape.net David Paktor], on behalf of the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
[mailto:dlpaktor@netscape.net David Paktor], on behalf of the IBM Corporation, contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
'''Sparc32 support in development''' (2006-05-05)
OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project.
'''OpenBIOS switched to Subversion''' (2006-04-26)
See the [[Download|development repository]] for more information.
'''Bugfix version of tokenizer toke''' (2005-10-15)
Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New version of toke''' (2005-10-05)
Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New versions of toke and detok''' (2005-03-10)
New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1.
'''Stallman calls for action on Free BIOS''' (2005-02-26)
FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS.
''' Portability and cross development''' (2005-01-12)
OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC.
'''OpenBIOS boots, part II'''
(2004-08-01)
After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq.
'''Linux Tag'''
(2004-06-27)
The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver.
'''OpenBIOS boots'''
(2004-05-23)
After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86).
'''IDE support'''
(2004-01-23)
Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon.
'''Device and Client Interface'''
(2004-01-10)
OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux.
'''Bitkeeper repository'''
(2003-12-20)
Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree.
'''Toke and Detok update'''
(2003-11-29)
Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now.
'''OpenBIOS forth kernel 1.1'''
(2003-10-12)
After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system.
'''OpenBIOS forth kernel released'''
(2003-09-16)
After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain".
'''New domain: openbios.org!'''
(2003-08-23)
We got it! After many years of hazzling with a domain grabber we finally got the domain [http://openbios.org/ openbios.org].
'''dictionary dumping'''
(2002-10-16)
OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[Mailinglist|mailing list archive]].
'''LinuxFund.org'''
(2002-07-04)
OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project.
'''toke and detok update'''
(2002-05-26)
Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs.
'''toke 0.2 released'''
(2002-03-20)
The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing.
'''toke 0.1 released'''
(2002-03-04)
Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it.
'''detok 0.3 released'''
(2002-02-26)
The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%.
'''/dev/bios 0.3.2 released'''
(2002-02-19)
After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets.
'''new version of /dev/bios available'''
(2002-02-15)
The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets.
'''new version of feval released'''
(2001-12-16)
FCode evaluator feval-0.2.6 released. This is a bug fix release.
'''Talk to us LIVE!'''
(2001-12-03)
Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone)
'''new version of detok released'''
(2001-12-02)
FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details.
'''OpenBIOS is now under control of CVS'''
(2001-11-12)
The OpenBIOS development CVS is up and running.
'''new version of feval released'''
(2001-11-08)
FCode evaluator feval-0.2.5 released. This version has preliminary package support.
'''new version of detok released'''
(2001-10-15)
FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error.
'''new version of detok and feval released''' (2001-09-16)
Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now.
'''we now have a detokenizer''' (2001-09-09)
There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite.
'''general news on bios-coding''' (2000-02-13)
The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/.
'''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.'''
88b22a23847a779d984732d8e9c62ec90bd9857a
MediaWiki:Sidebar
8
7
66
65
2007-01-13T17:22:39Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Experience
** Releases|Releases
** Downloads|Downloads
** Milestones|Milestones
* Development
** FCODE suite|FCODE suite
** BeginAgain|Kernel
** FlashRom|Flashing
** http://bugzilla.openbios.org/|Issues/Bugs
* Documentation
** OpenFirmware|OpenFirmware
** Bindings|Bindings and Supplements
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
b69d3072f6a1dd9e442fb1d925e8741eecb23387
67
66
2007-01-13T17:35:53Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Implementations
** Open Firmware
** Smart Firmware
** OpenBIOS
** SLOF
* Experience
** Releases|Releases
** Downloads|Downloads
* Development
** FCODE suite|FCODE suite
** BeginAgain|Kernel
** FlashRom|Flashing
** http://bugzilla.openbios.org/|Issues/Bugs
** Low Level Firmware
* Documentation
** OpenFirmware|OpenFirmware
** Bindings|Bindings and Supplements
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
4e6887dcee4c8e0c249869670b02c21bb7ca216d
68
67
2007-01-13T17:38:48Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Implementations
** OpenFirmware|Open Firmware
** SmartFirmware|Smart Firmware
** OpenBOOT|OpenBOOT
** Releases|OpenBIOS
** SLOF|SLOF
* Experience
** Releases|Releases
** Downloads|Downloads
* Development
** FCODE suite|FCODE suite
** BeginAgain|Kernel
** FlashRom|Flashing
** http://bugzilla.openbios.org/|Issues/Bugs
** Low Level Firmware
* Documentation
** OpenFirmware|OpenFirmware
** Bindings|Bindings and Supplements
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
9ba2e22d6fe73f8bc6bcc198f8814138ba761c09
69
68
2007-01-13T17:39:20Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Implementations
** Open Firmware|Open Firmware
** SmartFirmware|Smart Firmware
** OpenBOOT|OpenBOOT
** Releases|OpenBIOS
** SLOF|SLOF
* Experience
** Releases|Releases
** Downloads|Downloads
* Development
** FCODE suite|FCODE suite
** BeginAgain|Kernel
** FlashRom|Flashing
** http://bugzilla.openbios.org/|Issues/Bugs
** Low Level Firmware
* Documentation
** OpenFirmware|OpenFirmware
** Bindings|Bindings and Supplements
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
cee66d6a8d134857da47981d7e1902f5e788e899
70
69
2007-01-13T17:42:58Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Implementations
** Open Firmware|Open Firmware
** SmartFirmware|Smart Firmware
** OpenBOOT|OpenBOOT
** OpenBIOS|OpenBIOS
** SLOF|SLOF
* Experience
** Releases|Releases
** Downloads|Downloads
* Development
** FCODE suite|FCODE suite
** BeginAgain|Kernel
** FlashRom|Flashing
** http://bugzilla.openbios.org/|Issues/Bugs
** Low Level Firmware
* Documentation
** OpenFirmware|OpenFirmware
** Bindings|Bindings and Supplements
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
75212460884c7d27b40213a909f38f2583d59bf7
71
70
2007-01-13T17:44:02Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Implementations
** Open Firmware|Open Firmware
** SmartFirmware|Smart Firmware
** OpenBOOT|OpenBOOT
** OpenBIOS|OpenBIOS
** SLOF|SLOF
* Development
** FCODE suite|FCODE suite
** BeginAgain|Kernel
** FlashRom|Flashing
** http://bugzilla.openbios.org/|Issues/Bugs
** Low Level Firmware
* Documentation
** OpenFirmware|OpenFirmware
** Bindings|Bindings and Supplements
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
132b956192cc9f9d8754651c25d190f3ae304ec2
72
71
2007-01-24T12:14:41Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Implementations
** Open Firmware|Open Firmware
** SmartFirmware|Smart Firmware
** OpenBOOT|OpenBOOT
** OpenBIOS|OpenBIOS
** SLOF|SLOF
* Development
** FCODE suite|FCODE suite
** BeginAgain|Kernel
** FlashRom|Flashing
** http://bugzilla.openbios.org/|Issues/Bugs
** Low Level Firmware
* Documentation
** IEEE1275-1994|Open Firmware
** Bindings|Bindings and Supplements
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
4d3e18271daf62b92582fe72fd3431291590a840
73
72
2007-01-24T12:15:34Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Project Statement|Project Statement
** Credits|Credits
** Licensing|Licensing
* Implementations
** Open Firmware|Open Firmware
** SmartFirmware|Smart Firmware
** OpenBOOT|OpenBOOT
** OpenBIOS|OpenBIOS
** SLOF|SLOF
* Development
** FCODE suite|FCODE suite
** BeginAgain|Kernel
** FlashRom|Flashing
** http://bugzilla.openbios.org/|Issues/Bugs
** Low Level Firmware
* Documentation
** IEEE 1275-1994|Open Firmware
** Bindings|Bindings and Supplements
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
89f1843cb6545df37fd1c7626e7ff6bd77fcbda3
OpenBoot
0
34
382
2007-01-13T17:39:52Z
WikiSysop
1
[[OpenBoot]] moved to [[OpenBOOT]]
wikitext
text/x-wiki
#REDIRECT [[OpenBOOT]]
89f7f9afd211ca21524e9d7467a22485a4cf7484
OpenBIOS
0
16
161
160
2007-01-13T17:41:17Z
WikiSysop
1
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
== Introduction ==
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
== Source code browsing ==
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
== Snapshots ==
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
== More on Subversion ==
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
0c185ece03c152f6c6281416885d56d8cd74a3bb
162
161
2007-01-13T17:42:18Z
WikiSysop
1
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
80f0a15de7a17096e285f9704e3622d6de305741
163
162
2007-01-13T17:42:29Z
WikiSysop
1
[[Releases]] moved to [[OpenBIOS]]
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
80f0a15de7a17096e285f9704e3622d6de305741
164
163
2007-04-18T09:28:02Z
Stepan
2
/* OpenBIOS */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
47cb29fb4d98167c06c1db21945f5bdd0879b4b4
165
164
2007-04-26T22:19:57Z
Stepan
2
/* OpenBIOS - Code Releases */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[#snapshots|snapshots section]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
d927fe60185bb17b9fc58979782b326aa517a085
166
165
2007-04-26T22:20:38Z
Stepan
2
/* OpenBIOS - Code Releases */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.
All the releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
7067cde603b260599e44082791eaa2bca6b60a87
167
166
2007-04-26T22:22:57Z
Stepan
2
/* OpenBIOS - Code Releases */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).
'''Note:''' The OpenBIOS releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. You might also want to have a look at the other Open Firmware implementations in the Implementations section on the left side of this page.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
109f8803869e09776ead8a760f82491901957dfe
168
167
2007-04-26T22:24:19Z
Stepan
2
/* OpenBIOS */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).
'''Note:''' The OpenBIOS releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. You might also want to have a look at the other Open Firmware implementations in the Implementations section on the left side of this page.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha2] (2007-04-27)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
de85994bf629a67f2c927644c52ecfa767e7439e
169
168
2007-04-26T22:25:47Z
Stepan
2
/* Development Repository */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).
'''Note:''' The OpenBIOS releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. You might also want to have a look at the other Open Firmware implementations in the Implementations section on the left side of this page.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha2] (2007-04-27)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
2bc80ac47134a066be345181ea0095de8b99b60d
170
169
2007-04-26T22:27:24Z
Stepan
2
/* OpenBIOS */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).
'''Note:''' The OpenBIOS releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. You might also want to have a look at the other Open Firmware implementations in the Implementations section on the left side of this page.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
310e9dea51865c3f4504d73406c376d07d25d212
171
170
2007-04-26T22:27:59Z
Stepan
2
/* OpenBIOS - Code Releases */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)
=== detok ===
Download the latest release of detok, the OpenBIOS FCode detokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)
=== toke ===
Download the latest release of toke, the OpenBIOS FCode tokenizer.
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)
=== romheaders ===
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
b481ede22f0546e90baa67424262aba389815e96
Releases
0
35
383
2007-01-13T17:42:29Z
WikiSysop
1
[[Releases]] moved to [[OpenBIOS]]
wikitext
text/x-wiki
#REDIRECT [[OpenBIOS]]
5050cbfd3aaa3f974b2de33535f88e6900e52c30
Bindings
0
36
384
2007-01-13T17:44:31Z
WikiSysop
1
wikitext
text/x-wiki
== Bindings and Supplements for Bus Systems ==
* [http://www.openbios.org/docs/bus.pci.pdf PCI - Approved Version 2.1]
* [http://www.openbios.org/docs/bus.usb.pdf USB 1.0]
* [http://www.openbios.org/docs/bus.isa.pdf ISA - Draft 0.4]
* [http://www.openbios.org/docs/bus.pccard.pdf PC-Card]
== Bindings and Supplements for CPU Architectures ==
* [http://www.openbios.org/docs/12756d5.ps Open Firmware 64bit extensions]
* [http://www.openbios.org/docs/arm0_3d.pdf ARM bindings]
* [http://www.openbios.org/docs/ppc-2_1.ps PPC bindings]
* [http://www.openbios.org/docs/PREP.ps PPC PREP bindings]
* [http://www.openbios.org/docs/CHRP.ps PPC CHRP bindings]
* [http://www.openbios.org/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA]
== Device Bindings ==
* [http://www.openbios.org/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller
* [http://www.openbios.org/docs/audio-1_0d.ps Audio] - ISA Audio
* [http://www.openbios.org/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller
* [http://www.openbios.org/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller
* [http://www.openbios.org/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller
* [http://www.openbios.org/docs/lfb-1_0d.ps Linear Framebuffer]
* [http://www.openbios.org/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port
* [http://www.openbios.org/docs/serial-1_0d.ps Serial] - ISA Serial Port
* [http://www.openbios.org/docs/vga-1_0d.ps VGA] - VGA Display
== Recommended Practice ==
* [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2
* [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2
* [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0
* [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4
* [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9
* [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2
* [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!!
* [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0
80d5e4bf07b0776cbfeda2bf3258f84ac30af8ac
385
384
2007-01-13T17:45:04Z
WikiSysop
1
/* Bindings and Supplements for Bus Systems */
wikitext
text/x-wiki
__NOTOC__
== Bindings and Supplements for Bus Systems ==
* [http://www.openbios.org/docs/bus.pci.pdf PCI - Approved Version 2.1]
* [http://www.openbios.org/docs/bus.usb.pdf USB 1.0]
* [http://www.openbios.org/docs/bus.isa.pdf ISA - Draft 0.4]
* [http://www.openbios.org/docs/bus.pccard.pdf PC-Card]
== Bindings and Supplements for CPU Architectures ==
* [http://www.openbios.org/docs/12756d5.ps Open Firmware 64bit extensions]
* [http://www.openbios.org/docs/arm0_3d.pdf ARM bindings]
* [http://www.openbios.org/docs/ppc-2_1.ps PPC bindings]
* [http://www.openbios.org/docs/PREP.ps PPC PREP bindings]
* [http://www.openbios.org/docs/CHRP.ps PPC CHRP bindings]
* [http://www.openbios.org/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA]
== Device Bindings ==
* [http://www.openbios.org/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller
* [http://www.openbios.org/docs/audio-1_0d.ps Audio] - ISA Audio
* [http://www.openbios.org/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller
* [http://www.openbios.org/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller
* [http://www.openbios.org/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller
* [http://www.openbios.org/docs/lfb-1_0d.ps Linear Framebuffer]
* [http://www.openbios.org/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port
* [http://www.openbios.org/docs/serial-1_0d.ps Serial] - ISA Serial Port
* [http://www.openbios.org/docs/vga-1_0d.ps VGA] - VGA Display
== Recommended Practice ==
* [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2
* [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2
* [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0
* [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4
* [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9
* [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2
* [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!!
* [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0
cf7f0f7e8e53d37bbca2b750a8697252b862ce3e
386
385
2007-01-24T12:10:29Z
Stepan
2
/* Bindings and Supplements for Bus Systems */
wikitext
text/x-wiki
__NOTOC__
== Bindings and Supplements for Bus Systems ==
* [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1]
* [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0]
* [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4]
* [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card]
== Bindings and Supplements for CPU Architectures ==
* [http://www.openbios.org/docs/12756d5.ps Open Firmware 64bit extensions]
* [http://www.openbios.org/docs/arm0_3d.pdf ARM bindings]
* [http://www.openbios.org/docs/ppc-2_1.ps PPC bindings]
* [http://www.openbios.org/docs/PREP.ps PPC PREP bindings]
* [http://www.openbios.org/docs/CHRP.ps PPC CHRP bindings]
* [http://www.openbios.org/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA]
== Device Bindings ==
* [http://www.openbios.org/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller
* [http://www.openbios.org/docs/audio-1_0d.ps Audio] - ISA Audio
* [http://www.openbios.org/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller
* [http://www.openbios.org/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller
* [http://www.openbios.org/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller
* [http://www.openbios.org/docs/lfb-1_0d.ps Linear Framebuffer]
* [http://www.openbios.org/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port
* [http://www.openbios.org/docs/serial-1_0d.ps Serial] - ISA Serial Port
* [http://www.openbios.org/docs/vga-1_0d.ps VGA] - VGA Display
== Recommended Practice ==
* [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2
* [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2
* [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0
* [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4
* [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9
* [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2
* [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!!
* [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0
3c42784b17e100d490148ba6109f18a7e5169040
387
386
2007-01-24T12:11:10Z
Stepan
2
/* Bindings and Supplements for CPU Architectures */
wikitext
text/x-wiki
__NOTOC__
== Bindings and Supplements for Bus Systems ==
* [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1]
* [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0]
* [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4]
* [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card]
== Bindings and Supplements for CPU Architectures ==
* [http://www.openbios.org/data/docs/12756d5.ps Open Firmware 64bit extensions]
* [http://www.openbios.org/data/docs/arm0_3d.pdf ARM bindings]
* [http://www.openbios.org/data/docs/ppc-2_1.ps PPC bindings]
* [http://www.openbios.org/data/docs/PREP.ps PPC PREP bindings]
* [http://www.openbios.org/data/docs/CHRP.ps PPC CHRP bindings]
* [http://www.openbios.org/data/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA]
== Device Bindings ==
* [http://www.openbios.org/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller
* [http://www.openbios.org/docs/audio-1_0d.ps Audio] - ISA Audio
* [http://www.openbios.org/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller
* [http://www.openbios.org/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller
* [http://www.openbios.org/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller
* [http://www.openbios.org/docs/lfb-1_0d.ps Linear Framebuffer]
* [http://www.openbios.org/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port
* [http://www.openbios.org/docs/serial-1_0d.ps Serial] - ISA Serial Port
* [http://www.openbios.org/docs/vga-1_0d.ps VGA] - VGA Display
== Recommended Practice ==
* [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2
* [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2
* [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0
* [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4
* [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9
* [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2
* [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!!
* [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0
cb5fae94fb3bbbdfd2c736b29f13a3e8adaf7b10
388
387
2007-01-24T12:11:51Z
Stepan
2
/* Device Bindings */
wikitext
text/x-wiki
__NOTOC__
== Bindings and Supplements for Bus Systems ==
* [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1]
* [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0]
* [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4]
* [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card]
== Bindings and Supplements for CPU Architectures ==
* [http://www.openbios.org/data/docs/12756d5.ps Open Firmware 64bit extensions]
* [http://www.openbios.org/data/docs/arm0_3d.pdf ARM bindings]
* [http://www.openbios.org/data/docs/ppc-2_1.ps PPC bindings]
* [http://www.openbios.org/data/docs/PREP.ps PPC PREP bindings]
* [http://www.openbios.org/data/docs/CHRP.ps PPC CHRP bindings]
* [http://www.openbios.org/data/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA]
== Device Bindings ==
* [http://www.openbios.org/data/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller
* [http://www.openbios.org/data/docs/audio-1_0d.ps Audio] - ISA Audio
* [http://www.openbios.org/data/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller
* [http://www.openbios.org/data/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller
* [http://www.openbios.org/data/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller
* [http://www.openbios.org/data/docs/lfb-1_0d.ps Linear Framebuffer]
* [http://www.openbios.org/data/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port
* [http://www.openbios.org/data/docs/serial-1_0d.ps Serial] - ISA Serial Port
* [http://www.openbios.org/data/docs/vga-1_0d.ps VGA] - VGA Display
== Recommended Practice ==
* [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2
* [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2
* [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0
* [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4
* [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9
* [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2
* [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!!
* [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0
9b30529b9ca39dc9ea8edd6416b01c53e67cd1c2
389
388
2007-01-24T12:12:26Z
Stepan
2
/* Recommended Practice */
wikitext
text/x-wiki
__NOTOC__
== Bindings and Supplements for Bus Systems ==
* [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1]
* [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0]
* [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4]
* [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card]
== Bindings and Supplements for CPU Architectures ==
* [http://www.openbios.org/data/docs/12756d5.ps Open Firmware 64bit extensions]
* [http://www.openbios.org/data/docs/arm0_3d.pdf ARM bindings]
* [http://www.openbios.org/data/docs/ppc-2_1.ps PPC bindings]
* [http://www.openbios.org/data/docs/PREP.ps PPC PREP bindings]
* [http://www.openbios.org/data/docs/CHRP.ps PPC CHRP bindings]
* [http://www.openbios.org/data/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA]
== Device Bindings ==
* [http://www.openbios.org/data/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller
* [http://www.openbios.org/data/docs/audio-1_0d.ps Audio] - ISA Audio
* [http://www.openbios.org/data/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller
* [http://www.openbios.org/data/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller
* [http://www.openbios.org/data/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller
* [http://www.openbios.org/data/docs/lfb-1_0d.ps Linear Framebuffer]
* [http://www.openbios.org/data/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port
* [http://www.openbios.org/data/docs/serial-1_0d.ps Serial] - ISA Serial Port
* [http://www.openbios.org/data/docs/vga-1_0d.ps VGA] - VGA Display
== Recommended Practice ==
* [http://www.openbios.org/data/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2
* [http://www.openbios.org/data/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2
* [http://www.openbios.org/data/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0
* [http://www.openbios.org/data/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4
* [http://www.openbios.org/data/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9
* [http://www.openbios.org/data/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2
* [http://www.openbios.org/data/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!!
* [http://www.openbios.org/data/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0
bce832ff51fe281d35b6ae815d2fbc952ffa013c
390
389
2007-04-05T14:10:45Z
Stepan
2
/* Recommended Practice */
wikitext
text/x-wiki
__NOTOC__
== Bindings and Supplements for Bus Systems ==
* [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1]
* [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0]
* [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4]
* [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card]
== Bindings and Supplements for CPU Architectures ==
* [http://www.openbios.org/data/docs/12756d5.ps Open Firmware 64bit extensions]
* [http://www.openbios.org/data/docs/arm0_3d.pdf ARM bindings]
* [http://www.openbios.org/data/docs/ppc-2_1.ps PPC bindings]
* [http://www.openbios.org/data/docs/PREP.ps PPC PREP bindings]
* [http://www.openbios.org/data/docs/CHRP.ps PPC CHRP bindings]
* [http://www.openbios.org/data/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA]
== Device Bindings ==
* [http://www.openbios.org/data/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller
* [http://www.openbios.org/data/docs/audio-1_0d.ps Audio] - ISA Audio
* [http://www.openbios.org/data/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller
* [http://www.openbios.org/data/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller
* [http://www.openbios.org/data/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller
* [http://www.openbios.org/data/docs/lfb-1_0d.ps Linear Framebuffer]
* [http://www.openbios.org/data/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port
* [http://www.openbios.org/data/docs/serial-1_0d.ps Serial] - ISA Serial Port
* [http://www.openbios.org/data/docs/vga-1_0d.ps VGA] - VGA Display
== Recommended Practice ==
* [http://www.openbios.org/data/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2
* [http://www.openbios.org/data/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2
* [http://www.openbios.org/data/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0
* [http://www.openbios.org/data/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4
* [http://www.openbios.org/data/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9
* [http://www.openbios.org/data/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2
* [http://www.openbios.org/data/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!!
* [http://www.openbios.org/data/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0
* [http://playground.sun.com/1275/proposals/Closed/Accepted/410-it.txt dma-ranges]
8f36ce0452d007bfe3fd380de6f941d1ebd76b08
Contact us
0
10
89
88
2007-01-13T17:55:43Z
WikiSysop
1
/* The OpenBIOS Project */
wikitext
text/x-wiki
== The OpenBIOS Project ==
The OpenBIOS project coordinates all free and open source implementations of the Open Firmware standard. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, write documentation.
* need help porting Open Firmware to your custom hardware and are looking for specialists to get it done.
Of course we appreciate any help, hints, patches, comments, etc.
NOTE: Please read our [[Project Statement]].
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome.
== Project Maintainer ==
The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]]
__NOTOC__
18045b14b5ce6583222d8647164c7977fc3df6c4
90
89
2007-08-12T10:46:01Z
Stepan
2
/* Project Maintainer */
wikitext
text/x-wiki
== The OpenBIOS Project ==
The OpenBIOS project coordinates all free and open source implementations of the Open Firmware standard. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, write documentation.
* need help porting Open Firmware to your custom hardware and are looking for specialists to get it done.
Of course we appreciate any help, hints, patches, comments, etc.
NOTE: Please read our [[Project Statement]].
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome.
== Project Maintainer ==
The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]]
__NOTOC__
__NOEDITSECTION__
c48831041c1fbfa823f47ecf9acd1fbd033fa7ee
SLOF
0
37
391
2007-01-14T14:33:15Z
Stepan
2
wikitext
text/x-wiki
Slimline Open Firmware (SLOF) is initialization and boot source code based on the IEEE-1275 (Open Firmware) standard, developed by engineers of the IBM Corporation.
The SLOF source code provides illustrates what's needed to initialize and boot Linux or a hypervisor on the industry Open Firmware boot standard.
The two links below offer:
* Documentation
* Pseudo Open Firmware for prototyping, test, and debug
* Low Level Firmware for IBM's JS20 (closed source)
Note: You need an IBM ID to continue to the download.
* http://www-128.ibm.com/developerworks/power/pa-slof/
* http://www-128.ibm.com/developerworks/power/pa-slof-js20/
538ca85b7da2f248903575622f600198f8fd87f6
IEEE 1275-1994
0
15
116
115
2007-01-24T12:20:37Z
WikiSysop
1
wikitext
text/x-wiki
After 5 years the IEEE 1275-1994 standard got withdrawn by the IEEE Standards Association. This does by no means implicate that this standard is abandoned or dead. There are several commercial implementations of Open Firmware and a quite reasonable number of hardware vendors support it. IEEE sold the rights to distribute the standards document to Global Engineering who still offer it.
To Contact Global Engineering, use Phone: 1-800-854-7179, Fax: 303-397-2740. Out side the U.S. call 303-792-2181. You can also purchase the IEEE 1275-1994 document online from the [http://global.ihs.com/ Global Engineering website].
To get started with Open Firmware, download the IEEE 1275-1994, Standard for Boot (Initialization Configuration) Firmware Core Requirements and Practices. You can get the document from our [http://www.openbios.org/data/docs/of1275.pdf local mirror] or from the [ftp://playground.sun.com/pub/p1275/coredoc/1275-1994/1275.ps.gz IEEE 1275-1994 ftp archive at sun.com].
For more information on IEEE 1275 Open Firmware, we recommend you browse the [http://playground.sun.com/pub/p1275 IEEE Standard 1275 Working Group's Home Page].
No Standard without mistakes - This [http://www.openbios.org/data/docs/1275errata.pdf Errata] document contains corrections of mistakes and clarifications of the IEEE 1275-1994 standard (Draft #4).
The Open Firmware standard is the elementary base of OpenBIOS. Any questions are welcome, please contact [[User:Stepan|Stefan Reinauer]] or the [[Mailinglist|OpenBIOS Mailinglist]].
f8f56364e5e9882434a7ebb97d800defb97b3948
Licensing
0
14
111
110
2007-08-12T10:46:22Z
Stepan
2
/* View the license */
wikitext
text/x-wiki
= OpenBIOS Licensing =
OpenBIOS is licensed under the GNU General Public License v2. If you adapt OpenBIOS to your needs, please contact us with your changes so that you can contribute your changes back to the community.
= Why GPL? =
We see the GPL giving OpenBIOS a big competitive advantage over other firmware solutions:
* As a hardware vendor you get the warranty that nobody hiddenly improves the code you have been contributing without giving those improvements back. Thus, GPL guarantees that you keep control over your work and contributions.
* End users / customers get great benefit from OpenBIOS being GPL licensed: The GPL insures customers that a given platform will act like all other OpenBIOS platforms. BSD is a negative marketing point where BIOS is concerned.
= View the license =
Have a look at the [[About:License|complete license]]
__NOEDITSECTION__
f68e41c2d6d0adb10f13e94ac69f91630c193211
Open Firmware
0
33
366
365
2007-08-12T10:46:37Z
Stepan
2
/* Download */
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
__NOEDITSECTION__
88469e2f7305f282bccb09d33af0ae196f4faa24
367
366
2007-08-13T15:20:44Z
Stepan
2
some initial explanation on how to build it.
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
== LinuxBIOS ==
You should change openfirmware/cpu/x86/pc/biosload/config.fth:
Index: config.fth
===================================================================
--- config.fth (revision 533)
+++ config.fth (working copy)
@@ -9,7 +9,7 @@
\ - Image Format - Example Media - previous stage bootloader
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux
-create syslinux-loaded
+\ create syslinux-loaded
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload
\ create bzimage-loaded
@@ -19,7 +19,7 @@
\ create etherboot-variant \ Enable additional tweaks for Etherboot
\ - ELF format (no pheader) - ROM - LinuxBIOS direct
-\ create linuxbios-loaded
+create linuxbios-loaded
\ Load and run in qemu
\ create qemu-loaded
== Building ==
$ cd /home/stepan/svn/openfirmware/cpu/x86/pc/biosload/build
$ make
This will result in oflb.elf
__NOEDITSECTION__
e17a4eea89e30c458f6fb1a9c9cba884664f0d31
368
367
2007-08-13T15:21:27Z
Stepan
2
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
== LinuxBIOS ==
You should change openfirmware/cpu/x86/pc/biosload/config.fth:
Index: config.fth
===================================================================
--- config.fth (revision 533)
+++ config.fth (working copy)
@@ -9,7 +9,7 @@
\ - Image Format - Example Media - previous stage bootloader
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux
-create syslinux-loaded
+\ create syslinux-loaded
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload
\ create bzimage-loaded
@@ -19,7 +19,7 @@
\ create etherboot-variant \ Enable additional tweaks for Etherboot
\ - ELF format (no pheader) - ROM - LinuxBIOS direct
-\ create linuxbios-loaded
+create linuxbios-loaded
\ Load and run in qemu
\ create qemu-loaded
== Building ==
$ cd openfirmware/cpu/x86/pc/biosload/build
$ make
This will result in oflb.elf
__NOEDITSECTION__
57d8227ffc31c9745d366d0b22e6b76f2b86b152
369
368
2007-08-13T15:27:31Z
Stepan
2
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
== LinuxBIOS ==
You should change openfirmware/cpu/x86/pc/biosload/config.fth:
Index: config.fth
===================================================================
--- config.fth (revision 533)
+++ config.fth (working copy)
@@ -9,7 +9,7 @@
\ - Image Format - Example Media - previous stage bootloader
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux
-create syslinux-loaded
+\ create syslinux-loaded
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload
\ create bzimage-loaded
@@ -19,7 +19,7 @@
\ create etherboot-variant \ Enable additional tweaks for Etherboot
\ - ELF format (no pheader) - ROM - LinuxBIOS direct
-\ create linuxbios-loaded
+create linuxbios-loaded
\ Load and run in qemu
\ create qemu-loaded
== Building ==
$ cd openfirmware/cpu/x86/pc/biosload/build
$ make
This will result in an ELF payload oflb.elf in the current directory.
__NOEDITSECTION__
6ee73abdd480105f74aa32196dd43df4d5a4fa4c
370
369
2007-08-14T19:55:19Z
Jns
12
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
== LinuxBIOS ==
You should change openfirmware/cpu/x86/pc/biosload/config.fth:
Index: config.fth
===================================================================
--- config.fth (revision 533)
+++ config.fth (working copy)
@@ -9,7 +9,7 @@
\ - Image Format - Example Media - previous stage bootloader
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux
-create syslinux-loaded
+\ create syslinux-loaded
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload
\ create bzimage-loaded
@@ -19,7 +19,7 @@
\ create etherboot-variant \ Enable additional tweaks for Etherboot
\ - ELF format (no pheader) - ROM - LinuxBIOS direct
-\ create linuxbios-loaded
+create linuxbios-loaded
\ Load and run in qemu
-\ create qemu-loaded
+create qemu-loaded
== Building ==
Software Requirements:
qemu-0.9.0 + ROMSIZE-patch
Open Firmware rev. >= 500
LinuxBIOS >= v2
=== Patch and build qemu ===
Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0.
tar xvfz qemu-0.9.0.tar.gz
cd qemu-0.9.0
wget http://www.freimann.org/qemu_biossize.patch
patch -p1 < qemu_biossize.patch
Make sure that you have gcc-3.x installed, then
./config && make && make install
=== Build Open Firmware ===
Get Open Firmware from Subversion
svn co svn://openbios.org/openfirmware
Change to the build directory of the biosload build.
cd cpu/x86/pc/biosload/
To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines
create linuxbios-loaded
create qemu-loaded
Comment out the line with
create syslinux-loaded
Now change to the build directory and type "make"
cd build
make
After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your LinuxBIOSv[x] directory.
=== Building LinuxBIOS ===
Follow the instructions in the LinuxBIOS documentation. Make sure that you use the ofwlb.elf file as your payload.
It is also very imortant that the ROMSIZE for LinuxBIOS and qemu correspond with each other.
=== Running it ===
qemu -L LinuxBIOSv3/build -hda path/to/disk.img -serial `tty` -nographic
__NOEDITSECTION__
f7f9980fa4f83d5672590405d4d418a29f16bdf8
371
370
2007-08-14T19:56:07Z
Jns
12
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
== LinuxBIOS ==
You should change openfirmware/cpu/x86/pc/biosload/config.fth:
Index: config.fth
===================================================================
--- config.fth (revision 533)
+++ config.fth (working copy)
@@ -9,7 +9,7 @@
\ - Image Format - Example Media - previous stage bootloader
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux
-create syslinux-loaded
+\ create syslinux-loaded
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload
\ create bzimage-loaded
@@ -19,7 +19,7 @@
\ create etherboot-variant \ Enable additional tweaks for Etherboot
\ - ELF format (no pheader) - ROM - LinuxBIOS direct
-\ create linuxbios-loaded
+create linuxbios-loaded
\ Load and run in qemu
-\ create qemu-loaded
+create qemu-loaded
== Building ==
Software Requirements:
qemu-0.9.0 + ROMSIZE-patch
Open Firmware rev. >= 500
LinuxBIOS >= v2
=== Patch and build qemu ===
Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0.
tar xvfz qemu-0.9.0.tar.gz
cd qemu-0.9.0
wget http://www.freimann.org/qemu_biossize.patch
patch -p1 < qemu_biossize.patch
Make sure that you have gcc-3.x installed, then
./config && make && make install
=== Build Open Firmware ===
Get Open Firmware from Subversion
svn co svn://openbios.org/openfirmware
Change to the build directory of the biosload build.
cd cpu/x86/pc/biosload/
To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines
create linuxbios-loaded
create qemu-loaded
Comment out the line with
create syslinux-loaded
Now change to the build directory and type "make"
cd build
make
After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your LinuxBIOSv[x] directory.
=== Build LinuxBIOS ===
Follow the instructions in the LinuxBIOS documentation. Make sure that you use the ofwlb.elf file as your payload.
It is also very imortant that the ROMSIZE for LinuxBIOS and qemu correspond with each other.
=== Running it ===
qemu -L LinuxBIOSv3/build -hda path/to/disk.img -serial `tty` -nographic
__NOEDITSECTION__
ebc86e3f3cb06b52915c1362a3406fe21586968b
372
371
2007-08-14T19:56:43Z
Jns
12
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
== LinuxBIOS ==
You should change openfirmware/cpu/x86/pc/biosload/config.fth:
Index: config.fth
===================================================================
--- config.fth (revision 533)
+++ config.fth (working copy)
@@ -9,7 +9,7 @@
\ - Image Format - Example Media - previous stage bootloader
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux
-create syslinux-loaded
+\ create syslinux-loaded
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload
\ create bzimage-loaded
@@ -19,7 +19,7 @@
\ create etherboot-variant \ Enable additional tweaks for Etherboot
\ - ELF format (no pheader) - ROM - LinuxBIOS direct
-\ create linuxbios-loaded
+create linuxbios-loaded
\ Load and run in qemu
-\ create qemu-loaded
+create qemu-loaded
== Building ==
Software Requirements:
qemu-0.9.0 + ROMSIZE-patch
Open Firmware rev. >= 500
LinuxBIOS >= v2
=== Patch and build qemu ===
Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0.
tar xvfz qemu-0.9.0.tar.gz
cd qemu-0.9.0
wget http://www.freimann.org/qemu_biossize.patch
patch -p1 < qemu_biossize.patch
Make sure that you have gcc-3.x installed, then
./config && make && make install
=== Build Open Firmware ===
Get Open Firmware from Subversion
svn co svn://openbios.org/openfirmware
Change to the build directory of the biosload build.
cd cpu/x86/pc/biosload/
To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines
create linuxbios-loaded
create qemu-loaded
Comment out the line with
create syslinux-loaded
Now change to the build directory and type "make"
cd build
make
After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your LinuxBIOSv[x] directory.
=== Build LinuxBIOS ===
Follow the instructions in the LinuxBIOS documentation. Make sure that you use the ofwlb.elf file as your payload.
It is also very imortant that the ROMSIZE for LinuxBIOS and qemu correspond with each other.
=== Run it ===
qemu -L LinuxBIOSv3/build -hda path/to/disk.img -serial `tty` -nographic
__NOEDITSECTION__
ba27b47154ed7445247a3932b707c6a7e3a85618
373
372
2007-08-17T10:47:51Z
Jns
12
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
== LinuxBIOS ==
You should change openfirmware/cpu/x86/pc/biosload/config.fth:
Index: config.fth
===================================================================
--- config.fth (revision 533)
+++ config.fth (working copy)
@@ -9,7 +9,7 @@
\ - Image Format - Example Media - previous stage bootloader
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux
-create syslinux-loaded
+\ create syslinux-loaded
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload
\ create bzimage-loaded
@@ -19,7 +19,7 @@
\ create etherboot-variant \ Enable additional tweaks for Etherboot
\ - ELF format (no pheader) - ROM - LinuxBIOS direct
-\ create linuxbios-loaded
+create linuxbios-loaded
\ Load and run in qemu
-\ create qemu-loaded
+create qemu-loaded
== Building ==
Software Requirements:
qemu-0.9.0 + ROMSIZE-patch
Open Firmware rev. >= 500
LinuxBIOS >= v2
=== Patch and build qemu ===
Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0.
tar xvfz qemu-0.9.0.tar.gz
cd qemu-0.9.0
wget http://www.freimann.org/qemu_biossize.patch
patch -p1 < qemu_biossize.patch
Make sure that you have gcc-3.x installed, then
./config && make && make install
=== Build Open Firmware ===
Get Open Firmware from Subversion
svn co svn://openbios.org/openfirmware
Change to the build directory of the biosload build.
cd cpu/x86/pc/biosload/
To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines
create linuxbios-loaded
create qemu-loaded
Comment out the line with
create syslinux-loaded
Now change to the build directory and type "make"
cd build
make
After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your LinuxBIOSv[x] directory.
=== Build LinuxBIOS ===
Follow the instructions in the LinuxBIOS documentation. Make sure that you use the ofwlb.elf file as your payload.
It is also very imortant that the ROMSIZE for LinuxBIOS and qemu correspond with each other.
=== Run it ===
qemu -L LinuxBIOSv3/build -hda path/to/disk.img -serial `tty` -nographic
__NOEDITSECTION__
f0682cfbee952882ab0d2e6d164b331aada379f8
374
373
2007-08-17T15:08:02Z
Jns
12
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
== LinuxBIOS ==
You should change openfirmware/cpu/x86/pc/biosload/config.fth:
Index: config.fth
===================================================================
--- config.fth (revision 548)
+++ config.fth (working copy)
@@ -9,7 +9,7 @@
\ - Image Format - Example Media - previous stage bootloader
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux
-create syslinux-loaded
+\ create syslinux-loaded
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload
\ create bzimage-loaded
@@ -19,7 +19,7 @@
\ create etherboot-variant \ Enable additional tweaks for Etherboot
\ - ELF format (no pheader) - ROM - LinuxBIOS direct
-\ create linuxbios-loaded
+create linuxbios-loaded
\ Load and run in qemu
-\ create qemu-loaded
+create qemu-loaded
== Building ==
Software Requirements:
qemu-0.9.0 + ROMSIZE-patch
Open Firmware rev. >= 500
LinuxBIOS >= v2
=== Patch and build qemu ===
Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0.
tar xvfz qemu-0.9.0.tar.gz
cd qemu-0.9.0
wget http://www.freimann.org/qemu_biossize.patch
patch -p1 < qemu_biossize.patch
Make sure that you have gcc-3.x installed, then
./config && make && make install
=== Build Open Firmware ===
Get Open Firmware from Subversion
svn co svn://openbios.org/openfirmware
Change to the build directory of the biosload build.
cd cpu/x86/pc/biosload/
To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines
create linuxbios-loaded
create qemu-loaded
Comment out the line with
create syslinux-loaded
Now change to the build directory and type "make"
cd build
make
After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your LinuxBIOSv[x] directory.
=== Build LinuxBIOS ===
Follow the instructions in the LinuxBIOS documentation. Make sure that you use the ofwlb.elf file as your payload.
It is also very imortant that the ROMSIZE for LinuxBIOS and qemu correspond with each other.
=== Run it ===
qemu -L LinuxBIOSv3/build -hda path/to/disk.img -serial `tty` -nographic
__NOEDITSECTION__
c72c0c9f53d515922e3758257ebbd431c3b4da1d
375
374
2007-09-03T15:40:00Z
Jns
12
New patch for config.fth with "create pc-linux" enabled
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
== LinuxBIOS ==
You should change openfirmware/cpu/x86/pc/biosload/config.fth:
Index: config.fth
===================================================================
--- config.fth (revision 599)
+++ config.fth (working copy)
@@ -2,14 +2,14 @@
purpose: Establish configuration definitions
create pc \ Demo version for generic PC
-\ create pc-linux \ Demo version for generic PC and Linux
+create pc-linux \ Demo version for generic PC and Linux
\ create pc-serial \ Demo version for generic PC
\ --- The environment that "boots" OFW ---
\ - Image Format - Example Media - previous stage bootloader
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux
-create syslinux-loaded
+\ create syslinux-loaded
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload
\ create bzimage-loaded
@@ -19,10 +19,10 @@
\ create etherboot-variant \ Enable additional tweaks for Etherboot
\ - ELF format (no pheader) - ROM - LinuxBIOS direct
-\ create linuxbios-loaded
+create linuxbios-loaded
\ Load and run in qemu
-\ create qemu-loaded
+create qemu-loaded
[ifdef] pc-serial
create serial-console
@@ -47,7 +47,7 @@
\ the point where Linux starts using the MMU. It isn't strictly
\ necessary to use virtual mode if you just want to boot Linux
\ and then have OFW disappear.
-create virtual-mode
+\ create virtual-mode
create pc
create linux-support
[then]
== Building ==
Software Requirements:
qemu-0.9.0 + ROMSIZE-patch
Open Firmware rev. >= 500
LinuxBIOS >= v2
=== Patch and build qemu ===
Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0.
tar xvfz qemu-0.9.0.tar.gz
cd qemu-0.9.0
wget http://www.freimann.org/qemu_biossize.patch
patch -p1 < qemu_biossize.patch
Make sure that you have gcc-3.x installed, then
./config && make && make install
=== Build Open Firmware ===
Get Open Firmware from Subversion
svn co svn://openbios.org/openfirmware
Change to the build directory of the biosload build.
cd cpu/x86/pc/biosload/
To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines
create linuxbios-loaded
create qemu-loaded
Comment out the line with
create syslinux-loaded
Now change to the build directory and type "make"
cd build
make
After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your LinuxBIOSv[x] directory.
=== Build LinuxBIOS ===
Follow the instructions in the LinuxBIOS documentation. Make sure that you use the ofwlb.elf file as your payload.
It is also very imortant that the ROMSIZE for LinuxBIOS and qemu correspond with each other.
=== Run it ===
qemu -L LinuxBIOSv3/build -hda path/to/disk.img -serial `tty` -nographic
__NOEDITSECTION__
551e63c6cc51498f1b201b72d53393beb93809f6
376
375
2008-09-14T23:42:07Z
WikiSysop
1
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.
== Download ==
You can [http://tracker.coreboot.org/trac/openfirmware/browser browse the source code online].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
== coreboot ==
You should change openfirmware/cpu/x86/pc/biosload/config.fth:
Index: config.fth
===================================================================
--- config.fth (revision 599)
+++ config.fth (working copy)
@@ -2,14 +2,14 @@
purpose: Establish configuration definitions
create pc \ Demo version for generic PC
-\ create pc-linux \ Demo version for generic PC and Linux
+create pc-linux \ Demo version for generic PC and Linux
\ create pc-serial \ Demo version for generic PC
\ --- The environment that "boots" OFW ---
\ - Image Format - Example Media - previous stage bootloader
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux
-create syslinux-loaded
+\ create syslinux-loaded
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload
\ create bzimage-loaded
@@ -19,10 +19,10 @@
\ create etherboot-variant \ Enable additional tweaks for Etherboot
\ - ELF format (no pheader) - ROM - LinuxBIOS direct
-\ create linuxbios-loaded
+create linuxbios-loaded
\ Load and run in qemu
-\ create qemu-loaded
+create qemu-loaded
[ifdef] pc-serial
create serial-console
@@ -47,7 +47,7 @@
\ the point where Linux starts using the MMU. It isn't strictly
\ necessary to use virtual mode if you just want to boot Linux
\ and then have OFW disappear.
-create virtual-mode
+\ create virtual-mode
create pc
create linux-support
[then]
== Building ==
Software Requirements:
qemu-0.9.0 + ROMSIZE-patch
Open Firmware rev. >= 500
coreboot >= v2
=== Patch and build qemu ===
Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0.
tar xvfz qemu-0.9.0.tar.gz
cd qemu-0.9.0
wget http://www.freimann.org/qemu_biossize.patch
patch -p1 < qemu_biossize.patch
Make sure that you have gcc-3.x installed, then
./config && make && make install
=== Build Open Firmware ===
Get Open Firmware from Subversion
svn co svn://openbios.org/openfirmware
Change to the build directory of the biosload build.
cd cpu/x86/pc/biosload/
To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines
create linuxbios-loaded
create qemu-loaded
Comment out the line with
create syslinux-loaded
Now change to the build directory and type "make"
cd build
make
After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your coreboot-v[x] directory.
=== Build coreboot ===
Follow the instructions in the coreboot documentation. Make sure that you use the ofwlb.elf file as your payload.
It is also very imortant that the ROMSIZE for coreboot and qemu correspond with each other.
=== Run it ===
qemu -L coreboot-v3/build -hda path/to/disk.img -serial `tty` -nographic
__NOEDITSECTION__
2ecb976596c2a704f2538fc7f14ece5d2a3a2547
377
376
2008-09-15T00:01:39Z
WikiSysop
1
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a coreboot payload. It is the firmware implementation on the OLPC.
== Download ==
You can [http://tracker.coreboot.org/trac/openfirmware/browser browse the source code online].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki>
== coreboot ==
You should change openfirmware/cpu/x86/pc/biosload/config.fth:
Index: config.fth
===================================================================
--- config.fth (revision 599)
+++ config.fth (working copy)
@@ -2,14 +2,14 @@
purpose: Establish configuration definitions
create pc \ Demo version for generic PC
-\ create pc-linux \ Demo version for generic PC and Linux
+create pc-linux \ Demo version for generic PC and Linux
\ create pc-serial \ Demo version for generic PC
\ --- The environment that "boots" OFW ---
\ - Image Format - Example Media - previous stage bootloader
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux
-create syslinux-loaded
+\ create syslinux-loaded
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload
\ create bzimage-loaded
@@ -19,10 +19,10 @@
\ create etherboot-variant \ Enable additional tweaks for Etherboot
\ - ELF format (no pheader) - ROM - LinuxBIOS direct
-\ create linuxbios-loaded
+create linuxbios-loaded
\ Load and run in qemu
-\ create qemu-loaded
+create qemu-loaded
[ifdef] pc-serial
create serial-console
@@ -47,7 +47,7 @@
\ the point where Linux starts using the MMU. It isn't strictly
\ necessary to use virtual mode if you just want to boot Linux
\ and then have OFW disappear.
-create virtual-mode
+\ create virtual-mode
create pc
create linux-support
[then]
== Building ==
Software Requirements:
qemu-0.9.0 + ROMSIZE-patch
Open Firmware rev. >= 500
coreboot >= v2
=== Patch and build qemu ===
Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0.
tar xvfz qemu-0.9.0.tar.gz
cd qemu-0.9.0
wget http://www.freimann.org/qemu_biossize.patch
patch -p1 < qemu_biossize.patch
Make sure that you have gcc-3.x installed, then
./config && make && make install
=== Build Open Firmware ===
Get Open Firmware from Subversion
svn co svn://openbios.org/openfirmware
Change to the build directory of the biosload build.
cd cpu/x86/pc/biosload/
To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines
create linuxbios-loaded
create qemu-loaded
Comment out the line with
create syslinux-loaded
Now change to the build directory and type "make"
cd build
make
After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your coreboot-v[x] directory.
=== Build coreboot ===
Follow the instructions in the coreboot documentation. Make sure that you use the ofwlb.elf file as your payload.
It is also very imortant that the ROMSIZE for coreboot and qemu correspond with each other.
=== Run it ===
qemu -L coreboot-v3/build -hda path/to/disk.img -serial `tty` -nographic
__NOEDITSECTION__
73ba9d9c34cdad48bb575ddd7d761895a22d9287
378
377
2008-09-15T09:27:43Z
WikiSysop
1
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a coreboot payload. It is the firmware implementation on the OLPC.
== Download ==
You can [http://tracker.coreboot.org/trac/openfirmware/browser browse the source code online].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openfirmware.info/openfirmware/
if you want a specific revision:
$ svn co svn://openfirmware.info/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openfirmware.info/openfirmware-svn/ openfirmware</nowiki>
== coreboot ==
You should change openfirmware/cpu/x86/pc/biosload/config.fth:
Index: config.fth
===================================================================
--- config.fth (revision 599)
+++ config.fth (working copy)
@@ -2,14 +2,14 @@
purpose: Establish configuration definitions
create pc \ Demo version for generic PC
-\ create pc-linux \ Demo version for generic PC and Linux
+create pc-linux \ Demo version for generic PC and Linux
\ create pc-serial \ Demo version for generic PC
\ --- The environment that "boots" OFW ---
\ - Image Format - Example Media - previous stage bootloader
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux
-create syslinux-loaded
+\ create syslinux-loaded
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload
\ create bzimage-loaded
@@ -19,10 +19,10 @@
\ create etherboot-variant \ Enable additional tweaks for Etherboot
\ - ELF format (no pheader) - ROM - LinuxBIOS direct
-\ create linuxbios-loaded
+create linuxbios-loaded
\ Load and run in qemu
-\ create qemu-loaded
+create qemu-loaded
[ifdef] pc-serial
create serial-console
@@ -47,7 +47,7 @@
\ the point where Linux starts using the MMU. It isn't strictly
\ necessary to use virtual mode if you just want to boot Linux
\ and then have OFW disappear.
-create virtual-mode
+\ create virtual-mode
create pc
create linux-support
[then]
== Building ==
Software Requirements:
qemu-0.9.0 + ROMSIZE-patch
Open Firmware rev. >= 500
coreboot >= v2
=== Patch and build qemu ===
Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0.
tar xvfz qemu-0.9.0.tar.gz
cd qemu-0.9.0
wget http://www.freimann.org/qemu_biossize.patch
patch -p1 < qemu_biossize.patch
Make sure that you have gcc-3.x installed, then
./config && make && make install
=== Build Open Firmware ===
Get Open Firmware from Subversion
svn co svn://openfirmware.info/openfirmware
Change to the build directory of the biosload build.
cd cpu/x86/pc/biosload/
To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines
create linuxbios-loaded
create qemu-loaded
Comment out the line with
create syslinux-loaded
Now change to the build directory and type "make"
cd build
make
After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your coreboot-v[x] directory.
=== Build coreboot ===
Follow the instructions in the coreboot documentation. Make sure that you use the ofwlb.elf file as your payload.
It is also very imortant that the ROMSIZE for coreboot and qemu correspond with each other.
=== Run it ===
qemu -L coreboot-v3/build -hda path/to/disk.img -serial `tty` -nographic
__NOEDITSECTION__
== Mailing List ==
There's an Open Firmware mailing list at:
* http://www.openfirmware.info/mailman/listinfo/openfirmware.
The mailing list archive is also available:
* http://www.openfirmware.info/pipermail/openfirmware/
83a0176d1e41c9d23637c1ea9a688d9cc138a914
OpenBIOS
0
16
172
171
2007-08-12T10:48:36Z
Stepan
2
/* FCode Suite */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
40dd425cd1b8d127afbff1507d0234755ef4996c
173
172
2007-08-12T10:50:49Z
Stepan
2
/* More on Subversion */
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-suite
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
a399f1174befab7859d04188459927c686599638
174
173
2008-01-28T20:22:10Z
Stepan
2
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-utils
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
52d27f41918b8e45c62d5397ad757520f58c452b
175
174
2008-09-14T23:22:02Z
WikiSysop
1
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly coreboot issues nowadays).
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/131/openbios-devel?old_path=%2F&old=131&format=zip OpenBIOS 1.0alpha2] (2007-04-27)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-utils
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
be00e7ccdf234c614533c8901ef70b8cfb0810bc
176
175
2008-09-14T23:48:33Z
WikiSysop
1
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly coreboot issues nowadays).
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/131/openbios-devel?old_path=%2F&old=131&format=zip OpenBIOS 1.0alpha2] (2007-04-27)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-utils
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
716c46f38a4062a4d0f9a29919785297b66cd56b
FlashRom
0
25
335
334
2007-08-12T10:49:25Z
Stepan
2
/* Flash Updates in Linux */
wikitext
text/x-wiki
{{stub}}
__NOTOC__
= Flash Updates in Linux =
Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update.
Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://linuxbios.org LinuxBIOS project] and evolved to work with non-SIS chipsets.
[[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel.
You can download the latest version of '''flashrom''' [http://www.openbios.org/viewvc/trunk/util/flashrom.tar.gz?view=tar from the LinuxBIOS svn repository]
b35bbebe3564c282f743c7e80f42c0f536cbc272
336
335
2008-09-14T23:58:49Z
WikiSysop
1
wikitext
text/x-wiki
{{stub}}
__NOTOC__
= Flash Updates with Linux =
Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update.
Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://www.coreboot.org coreboot project] and evolved to work with non-SIS chipsets.
[[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel.
For more information about flashrom see http://www.coreboot.org/Flashrom
f41bed567df0bf76372b548ec8881912a1d8b140
SmartFirmware
0
31
358
357
2007-08-12T10:50:23Z
Stepan
2
/* Download */
wikitext
text/x-wiki
== Introduction ==
In 2006 [http://codegen.com/ CodeGen, Inc] released their Open Firmware implementation under a BSL like license. Their code, entirely written in ANSI C, contains the following components:
* [http://www.codegen.com/SmartFirmware/index.html SmartFirmware™]: an ANSI C implementation of the IEEE-1275 Open Firmware boot firmware standard. Dramatically reduce and ease your firmware development and system bring-up times and costs.
* An [http://www.codegen.com/SmartFirmware/ccfcode.html ANSI C compiler] that generates Open Firmware compatible Forth/Fcode makes it easy to develop drivers for PCI cards and PMC modules.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=SmartFirmware ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/smartfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/smartfirmware -r 1
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/smartfirmware-svn/ smartfirmware</nowiki>
__NOEDITSECTION__
bdd34c11e2032954bd34cf01af244d2a7c016162
359
358
2008-09-14T23:27:56Z
WikiSysop
1
wikitext
text/x-wiki
== Introduction ==
In 2006 [http://codegen.com/ CodeGen, Inc] released their Open Firmware implementation under a BSL like license. Their code, entirely written in ANSI C, contains the following components:
* [http://www.codegen.com/SmartFirmware/index.html SmartFirmware™]: an ANSI C implementation of the IEEE-1275 Open Firmware boot firmware standard. Dramatically reduce and ease your firmware development and system bring-up times and costs.
* An [http://www.codegen.com/SmartFirmware/ccfcode.html ANSI C compiler] that generates Open Firmware compatible Forth/Fcode makes it easy to develop drivers for PCI cards and PMC modules.
== Download ==
You can [http://tracker.coreboot.org/trac/smartfirmware/browser browse the code online].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/smartfirmware/
if you want a specific revision:
$ svn co svn://openbios.org/smartfirmware -r 1
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/smartfirmware-svn/ smartfirmware</nowiki>
__NOEDITSECTION__
00889821ec18602119a9313b5a5c7e9fd6a81283
OpenBOOT
0
32
363
362
2007-08-12T10:50:35Z
Stepan
2
/* Download */
wikitext
text/x-wiki
== Introduction ==
In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor.
== Download ==
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenBOOT ViewVC facility].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openboot/
if you want a specific revision:
$ svn co svn://openbios.org/openboot -r 1
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki>
__NOEDITSECTION__
2deaf6519b431f84412fcd219faa51a9f0a4a0c9
364
363
2008-09-14T23:44:27Z
WikiSysop
1
wikitext
text/x-wiki
== Introduction ==
In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor.
== Download ==
You can [http://tracker.coreboot.org/trac/openboot/browser browse the source code online].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openbios.org/openboot/
if you want a specific revision:
$ svn co svn://openbios.org/openboot -r 1
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki>
__NOEDITSECTION__
a837bd89244de4c61f8e084a9467253d6ea3814a
FCODE suite
0
17
263
262
2007-08-12T10:51:55Z
Stepan
2
/* Coverage Reports */
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=113 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2]
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
Run the unit-test cases with
$ make tests
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
__NOEDITSECTION__
4bbfa432849713150aff0785399dff0b250e53d3
264
263
2008-07-11T12:02:01Z
Stepan
2
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=113 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2]
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
Run the unit-test cases with
$ make tests
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
== Kudos and Thanks ==
<div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:dlpaktor@netscape.net|David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!'''
</div>
__NOEDITSECTION__
dd9a95aa7064c59c2cff0673b08744a6c53c2c0d
265
264
2008-07-11T23:24:39Z
Stepan
2
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=197 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2]
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=197&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
Run the unit-test cases with
$ make tests
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
== Kudos and Thanks ==
<div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:dlpaktor@netscape.net|David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!'''
</div>
__NOEDITSECTION__
c6fc366b4faeafcc1ed9d945acb65e044d47b520
266
265
2008-07-11T23:25:36Z
Stepan
2
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=197 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2]
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=197&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
Run the unit-test cases with
$ make tests
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
== Kudos and Thanks ==
<div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:dlpaktor@netscape.net David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!'''
</div>
__NOEDITSECTION__
0dd7d11448deb4afc1e3142ea94d96149d1b67f2
267
266
2008-07-16T12:11:09Z
DavidPaktor
3
Updated David Paktor's email address
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=197 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2]
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=197&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility].
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
Run the unit-test cases with
$ make tests
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
== Kudos and Thanks ==
<div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:David@paktor.biz David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!'''
</div>
__NOEDITSECTION__
6d18fa0e44144056fdfad013d5e2448ec024271d
268
267
2008-09-14T23:18:50Z
WikiSysop
1
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils?rev=197 Sources] online. Available as a ZIP-File: [http://tracker.coreboot.org/trac/openbios/changeset/197/fcode-utils?old_path=%2F&old=197&format=zip FCode-utils 1.0.2]
See the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/ChangeLog?rev=197 ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a ZIP-File: [http://tracker.coreboot.org/trac/openbios/changeset/236/fcode-utils/documentation?old_path=%2F&old=&format=zip Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate [http://tracker.coreboot.org/trac/openbios/changeset/236/fcode-utils/localvalues?old_path=%2F&format=zip ZIP-File].
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/TODO collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/testsuite accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
Run the unit-test cases with
$ make tests
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/testsuite/AutoExec AutoExec] automates the execution, and
* [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/testsuite/AutoCompare AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/testlogs/testlogs-x86-cygwin X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/testlogs/testlogs-ppc-linux PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/testlogs/testlogs-ppc-aix PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
== Kudos and Thanks ==
<div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:David@paktor.biz David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!'''
</div>
__NOEDITSECTION__
0e28bd977c4b2c359d21515a1f4f0291b9427324
Forth/FCode
0
19
282
281
2007-08-12T10:52:57Z
Stepan
2
/* Why bytecode? */
wikitext
text/x-wiki
__NOTOC__
= What is Forth? =
From the [http://www.faqs.org/faqs/computer-lang/forth-faq/part1/ Forth FAQ]: Forth is a stack-based, extensible language without type-checking. It is probably best known for its "reverse Polish" (postfix) arithmetic notation, familiar to users of Hewlett-Packard calculators: to add two numbers in Forth, you would type 3 5 + instead of 3+5. The fundamental program unit in Forth is the "word": a named data item, subroutine, or operator. Programming in Forth consists of defining new words in terms of existing ones.
= Why and where is Forth used? =
Although invented in 1970, Forth became widely known with the advent of personal computers, where its high performance and economy of memory were attractive. These advantages still make Forth popular in embedded microcontroller systems, in locations ranging from the Space Shuttle to the bar-code reader used by your Federal Express driver. Forth's interactive nature streamlines the test and development of new hardware. Incremental development, a fast program-debug cycle, full interactive access to any level of the program, and the ability to work at a high "level of abstraction," all contribute to Forth's reputation for very high programmer productivity. These, plus the flexibility and malleability of the language, are the reasons most cited for choosing Forth for embedded systems. Find more information [http://www.complang.tuwien.ac.at/forth/faq/why-forth here].
= FCode =
FCode is a Forth dialect compliant to ANS Forth, that is available in two different forms: source and bytecode. FCode bytecode is the compiled form of FCode source.
= Why bytecode? =
Bytecode is small and efficient. And an evaluator (bytecode virtual machine) is almost trivial to implement. For example, putting a 1 to the stack only takes one byte in an FCode bytecode binary. This is especially valuable on combined system or expansion hardware roms where the available space is limited.
__NOEDITSECTION__
4d1839874cca41d5f8d862a6280a1f3890383712
On the Net
0
20
302
301
2007-08-12T10:53:45Z
Stepan
2
/* Open Firmware Companies/Vendor support */
wikitext
text/x-wiki
__NOTOC__
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
* [http://www.coresystems.de coresystems GmbH]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://linuxbios.org/ LinuxBIOS])
== Other Open Source Firmware Implementations ==
* [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation
* redboot
* SLOF
* Open Hackware
* SUN OpenBoot
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* [http://www.qemu.com/ QEMU]
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux
* Hypervisor
* ...
f35d393697df6dfc9ae1386660860e56f5ca3721
303
302
2007-08-12T11:00:08Z
Stepan
2
/* Other Open Source Firmware Implementations */
wikitext
text/x-wiki
__NOTOC__
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
* [http://www.coresystems.de coresystems GmbH]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://linuxbios.org/ LinuxBIOS])
== Other Open Source Firmware Implementations ==
* [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation
* [http://cygwin.com/redboot/ redboot]
* SLOF
* [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware]
* SUN OpenBoot
* [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* [http://www.qemu.com/ QEMU]
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux
* Hypervisor
* ...
a3381c010bc73d0a606683a8b84475d89bd3cebf
304
303
2008-09-14T23:49:20Z
WikiSysop
1
wikitext
text/x-wiki
__NOTOC__
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
* [http://www.coresystems.de coresystems GmbH]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://www.coreboot.org/Flashrom coreboot])
== Other Open Source Firmware Implementations ==
* [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation
* [http://cygwin.com/redboot/ redboot]
* SLOF
* [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware]
* SUN OpenBoot
* [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* [http://www.qemu.com/ QEMU]
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux
* Hypervisor
* ...
1c9d29ef3f33aa4626552c9d15c3681f9b421c18
Welcome to OpenBIOS
0
2
40
39
2008-07-16T12:07:49Z
DavidPaktor
3
Update David Paktor's email address
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
1087c2b63331a8fe2700bbbd22f96d5189cfb494
41
40
2008-09-14T23:45:49Z
WikiSysop
1
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://u-boot.sourceforge.net/ U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
0615b9d6b5d454b72f30c8f7318ab1ca6c32fbbe
42
41
2008-09-15T09:19:39Z
WikiSysop
1
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://www.denx.de/wiki/U-Boot U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.coreboot.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [OpenBOOT local mirror] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
60957a6e78b9a4f5a54168dce6fab48009562dcd
43
42
2008-09-15T09:20:42Z
WikiSysop
1
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.
In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://www.denx.de/wiki/U-Boot U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.coreboot.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website] to download the full archive (190MB) or check out our [[OpenBOOT|local mirror]] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
62375378ff6b973a9bb2d581451d0ad3e07a04e3
44
43
2008-09-15T09:21:30Z
WikiSysop
1
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, [[SLOF|IBM]] and others.
In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://www.denx.de/wiki/U-Boot U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.coreboot.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website] to download the full archive (190MB) or check out our [[OpenBOOT|local mirror]] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
25b45f03e56b9fed945f62bfde1f9b10a1983c58
Credits
0
13
103
102
2008-07-16T22:05:04Z
DavidPaktor
3
Add email address for David Paktor
wikitext
text/x-wiki
Development contributions
Development contributions
* Stefan Reinauer (project coordination, main development)
* Patrick Mauritz (initial kernel work)
* Samuel Rydh (forth interfaces, MOL port, ...)
* Greg Watson (briq port)
* [mailto:David@paktor.biz David Paktor] (improving Toke)
* Chen-Chau Chu (ppc fixes)
* Tim Barrett (detok patches)
* Krishna Myneni (permission to include kForth examples with toke)
Hardware/Funding
* Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development.
* [http://www.linuxfund.org/ LinuxFund.org] chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work!
* [http://www.newisys.com/ Newisys] funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openbios.org and www.linuxbios.org.
* [http://sase.de/ Daniele Frijia] for donating a Motorola PPC-machine
If you or somebody else is missing on this list, send an email to Stefan Reinauer
bc252a6d48eda53c5f933587ad0b6401869dece7
104
103
2008-09-14T23:47:55Z
WikiSysop
1
wikitext
text/x-wiki
Development contributions
Development contributions
* Stefan Reinauer (project coordination, main development)
* Patrick Mauritz (initial kernel work)
* Samuel Rydh (forth interfaces, MOL port, ...)
* Greg Watson (briq port)
* [mailto:David@paktor.biz David Paktor] (improving Toke)
* Chen-Chau Chu (ppc fixes)
* Tim Barrett (detok patches)
* Krishna Myneni (permission to include kForth examples with toke)
Hardware/Funding
* Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development.
* [http://www.linuxfund.org/ LinuxFund.org] chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work!
* [http://www.newisys.com/ Newisys] funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openfirmware.info and www.coreboot.org.
* [http://sase.de/ Daniele Frijia] for donating a Motorola PPC-machine
If you or somebody else is missing on this list, send an email to Stefan Reinauer
6aff354e7732ac77a3e1fcea3ca89de144285051
News
0
24
330
329
2008-07-16T22:07:33Z
DavidPaktor
3
Updated David Paktor's email address
wikitext
text/x-wiki
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:David@paktor.biz David Paktor] sent a new fork of the [[FCODE suite|OpenBIOS FCODE suite]]. After only a couple of days we finally got this merged into the official code base.
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:David@paktor.biz David Paktor], on behalf of the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).
'''New FCODE suite available''' (2006-08-08)
[mailto:David@paktor.biz David Paktor], on behalf of the IBM Corporation, contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here
'''Sparc32 support in development''' (2006-05-05)
OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project.
'''OpenBIOS switched to Subversion''' (2006-04-26)
See the [[Download|development repository]] for more information.
'''Bugfix version of tokenizer toke''' (2005-10-15)
Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New version of toke''' (2005-10-05)
Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release.
'''New versions of toke and detok''' (2005-03-10)
New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1.
'''Stallman calls for action on Free BIOS''' (2005-02-26)
FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS.
''' Portability and cross development''' (2005-01-12)
OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC.
'''OpenBIOS boots, part II'''
(2004-08-01)
After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq.
'''Linux Tag'''
(2004-06-27)
The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver.
'''OpenBIOS boots'''
(2004-05-23)
After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86).
'''IDE support'''
(2004-01-23)
Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon.
'''Device and Client Interface'''
(2004-01-10)
OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux.
'''Bitkeeper repository'''
(2003-12-20)
Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree.
'''Toke and Detok update'''
(2003-11-29)
Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now.
'''OpenBIOS forth kernel 1.1'''
(2003-10-12)
After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system.
'''OpenBIOS forth kernel released'''
(2003-09-16)
After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain".
'''New domain: openbios.org!'''
(2003-08-23)
We got it! After many years of hazzling with a domain grabber we finally got the domain [http://openbios.org/ openbios.org].
'''dictionary dumping'''
(2002-10-16)
OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[Mailinglist|mailing list archive]].
'''LinuxFund.org'''
(2002-07-04)
OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project.
'''toke and detok update'''
(2002-05-26)
Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs.
'''toke 0.2 released'''
(2002-03-20)
The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing.
'''toke 0.1 released'''
(2002-03-04)
Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it.
'''detok 0.3 released'''
(2002-02-26)
The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%.
'''/dev/bios 0.3.2 released'''
(2002-02-19)
After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets.
'''new version of /dev/bios available'''
(2002-02-15)
The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets.
'''new version of feval released'''
(2001-12-16)
FCode evaluator feval-0.2.6 released. This is a bug fix release.
'''Talk to us LIVE!'''
(2001-12-03)
Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone)
'''new version of detok released'''
(2001-12-02)
FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details.
'''OpenBIOS is now under control of CVS'''
(2001-11-12)
The OpenBIOS development CVS is up and running.
'''new version of feval released'''
(2001-11-08)
FCode evaluator feval-0.2.5 released. This version has preliminary package support.
'''new version of detok released'''
(2001-10-15)
FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error.
'''new version of detok and feval released''' (2001-09-16)
Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now.
'''we now have a detokenizer''' (2001-09-09)
There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite.
'''general news on bios-coding''' (2000-02-13)
The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/.
'''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.'''
04fc7f07dbebcc15fe08af2fd4c3419de4344a7d
Code of Conduct
0
12
98
97
2008-09-12T21:33:43Z
Stepan
2
[[Project Statement]] moved to [[Code of Conduct]]
wikitext
text/x-wiki
Dear OpenBIOS project members and other interested parties,
For the ease of development and for information on what can be expected from this project we want to set down the following ground rules in order to achieve a high quality implementation of our project objectives.
1. The objective of this project is to develop a free, open source, architecture independant firmware implementation following, if possible, the IEEE Standard for Boot (Initialization Configuration) Firmware (IEEE 1275-1994). Including not only the implementation of the standard itself but also the required toolkit consisting of a C to FCode compiler, an FCode tokenizer and an FCode detokenizer. This toolkit will simplify driver and API development implementing ANSI C as the development language instead of implementing Forth/FCode directly as suggested by the IEEE standard.
2. We cannot allow _any_ discussion or use of _any_ copyrighted, patented, or otherwise protected Firmware or BIOS implementations without an OSI approved license in this project or on the mailing list associated with this project. All members of this project and/or the according mailing lists agree to not disclose or use any copyrighted, patented, or otherwise protected information, ideas or concepts.
3. We do not intend to implement any of the ideas or concepts expressed in the current Intel 32bit architechture, except when these are necessary to insure the compatability with existing hardware. Such ideas and concepts will only be used if such use is not restricted by _any_ laws, copyrights or patents.
4. In order to assure truly universal implementation and/or optimize the functionality and performance it is our expressed wish to work in conjunction with other open source (firmware) projects, such as LinuxBIOS or U-Boot.
5. Cooperation with hardware vendors is necessary to implement this project on an architecture-independent basis. In certain cases this may include signing non-disclosure agreements with the aforementioned hardware vendors in an attempt to acquire hardware specific information or support that may not otherwise be available although the results of such cooperation must be freely redistributable.
6. Cooperation with any university, research project, or organization is desired except in such cases where the resulting information is restricted in use or redistributability.
If, for whatever reasons, any of the above statements are unacceptable or seem to be incorrect or unclear in _any_ way please do not hesitate to discuss this matter on the mailing list, we are open for suggestions. This is simply an attempt to assure the legal status of this project, protecting those involved from legal prosecution as well as to state the general objectives of the project.
OpenBIOS development team.
1d3ac3c0e6df55f959e72052405fa96b90e52e52
99
98
2008-09-14T23:47:18Z
WikiSysop
1
wikitext
text/x-wiki
Dear OpenBIOS project members and other interested parties,
For the ease of development and for information on what can be expected from this project we want to set down the following ground rules in order to achieve a high quality implementation of our project objectives.
1. The objective of this project is to develop a free, open source, architecture independant firmware implementation following, if possible, the IEEE Standard for Boot (Initialization Configuration) Firmware (IEEE 1275-1994). Including not only the implementation of the standard itself but also the required toolkit consisting of a C to FCode compiler, an FCode tokenizer and an FCode detokenizer. This toolkit will simplify driver and API development implementing ANSI C as the development language instead of implementing Forth/FCode directly as suggested by the IEEE standard.
2. We cannot allow _any_ discussion or use of _any_ copyrighted, patented, or otherwise protected Firmware or BIOS implementations without an OSI approved license in this project or on the mailing list associated with this project. All members of this project and/or the according mailing lists agree to not disclose or use any copyrighted, patented, or otherwise protected information, ideas or concepts.
3. We do not intend to implement any of the ideas or concepts expressed in the current Intel 32bit architechture, except when these are necessary to insure the compatability with existing hardware. Such ideas and concepts will only be used if such use is not restricted by _any_ laws, copyrights or patents.
4. In order to assure truly universal implementation and/or optimize the functionality and performance it is our expressed wish to work in conjunction with other open source (firmware) projects, such as coreboot or U-Boot.
5. Cooperation with hardware vendors is necessary to implement this project on an architecture-independent basis. In certain cases this may include signing non-disclosure agreements with the aforementioned hardware vendors in an attempt to acquire hardware specific information or support that may not otherwise be available although the results of such cooperation must be freely redistributable.
6. Cooperation with any university, research project, or organization is desired except in such cases where the resulting information is restricted in use or redistributability.
If, for whatever reasons, any of the above statements are unacceptable or seem to be incorrect or unclear in _any_ way please do not hesitate to discuss this matter on the mailing list, we are open for suggestions. This is simply an attempt to assure the legal status of this project, protecting those involved from legal prosecution as well as to state the general objectives of the project.
OpenBIOS development team.
ac56c91344f7dda35b88c6a64921090784a61102
Project Statement
0
38
392
2008-09-12T21:33:43Z
Stepan
2
[[Project Statement]] moved to [[Code of Conduct]]
wikitext
text/x-wiki
#REDIRECT [[Code of Conduct]]
f8561aaaab864da22207bc160a92fd7bec2a85e9
MediaWiki:Sidebar
8
7
74
73
2008-09-12T21:42:01Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Code of Conduct|Code of Conduct
** Credits|Credits
** Licensing|Licensing
* Implementations
** Open Firmware|Open Firmware
** SmartFirmware|Smart Firmware
** OpenBOOT|OpenBOOT
** OpenBIOS|OpenBIOS
** SLOF|SLOF
* Development
** FCODE suite|FCODE suite
** BeginAgain|Kernel
** FlashRom|Flashing
** http://bugzilla.openbios.org/|Issues/Bugs
** Low Level Firmware
* Documentation
** IEEE 1275-1994|Open Firmware
** Bindings|Bindings and Supplements
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
6088d1d085451617153df637c82ee733e970e267
Contact us
0
10
91
90
2008-09-14T23:47:03Z
WikiSysop
1
wikitext
text/x-wiki
== The OpenBIOS Project ==
The OpenBIOS project coordinates all free and open source implementations of the Open Firmware standard. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, write documentation.
* need help porting Open Firmware to your custom hardware and are looking for specialists to get it done.
Of course we appreciate any help, hints, patches, comments, etc.
NOTE: Please read our [[Project Statement]].
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #coreboot. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, coreboot, firmware and related topics are welcome.
== Project Maintainer ==
The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]]
__NOTOC__
__NOEDITSECTION__
7c15f6702c6435bfb20b28e644bd8be6a985ba32
92
91
2008-09-15T09:22:42Z
WikiSysop
1
wikitext
text/x-wiki
== The OpenBIOS Project ==
The OpenBIOS project coordinates all free and open source implementations of the Open Firmware standard. Yet our development team is rather small. You are welcome to contact us, if you
* want to help developing drivers, support for new systems, write documentation.
* need help porting Open Firmware to your custom hardware and are looking for specialists to get it done.
Of course we appreciate any help, hints, patches, comments, etc.
NOTE: Please read our [[Code of Conduct]].
== Mailinglist ==
Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.
== Internet Relay Chat ==
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #coreboot. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, coreboot, firmware and related topics are welcome.
== Project Maintainer ==
The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]]
__NOTOC__
__NOEDITSECTION__
1c5d5cb837ebc300cc34b651cd1c7271ee5b292a
BeginAgain
0
23
318
317
2008-09-14T23:57:22Z
WikiSysop
1
wikitext
text/x-wiki
= What is BeginAgain? =
BeginAgain is the Forth kernel, basically the heart of OpenBIOS.
Right after the system is far enough to execute any C code, this kernel will take over control and execute the forth code part of OpenBIOS.
BeginAgain supports the Forth language command group of IEEE 1275-1994 and passes the Hayes ANS forth compliance test.
= How does BeginAgain work? =
The OpenBIOS forth core "BeginAgain" is split into a forth kernel written in C and a forth dictionary which operated on by the kernel.
BeginAgain's approach is indirect threading. Forth words are compiled to execution tokens (pointers to the words dictionary entries). Only the prim words (minimal language support) are available as native C code.
When building the forth core, you get different versions of the forth kernel:
* a "hosted" unix binary. This binary can be used on a unix system:
** to execute a forth dictionary from a file. This can be used for testing openbios code in a development environment on a unix host.
** to create a dictionary file. Such a dictionary file sets up all of the forth language. Primitives are indexed to save relocations.
The default is to create a forth dictionary forth.dict from forth/start.fs. This file includes all of the basic forth language constructs from forth/bootstrap.fs and starts the interpreter.
To achieve this, the hosted unix version contains a basic set of forth words coded in C that allow creating a full dictionary.
* a varying number of target specific binaries.
On x86 you can start openbios for example from GRUB or coreboot. They are all based on the same forth engine consisting of a dictionary scheduler, primitive words needed to build the forth environment, 2 stacks and a simple set of console functions. These binaries can not be started directly in the unix host environment.
= Building and Using BeginAgain =
== Requirements ==
* gcc
* grub or any other multiboot loader to run the standalone binary "openbios.multiboot"
== Building and Usage ==
* make
this builds "openbios.multiboot", the standalone image and "unix", the hosted image. Additionally it creates a forth dictionary file from forth/start.fs. All generated files are written to the absolute directory held by the variable BUILDDIR, which defaults to obj-[platform]. Some compile time parameters can be tweaked in include/config.h
* use "unix" to create a forth dictionary on your own:
$ ./unix -Iforth start.fs
creates the file forth.dict from forth source forth/start.fs.
* use "unix" to run a created dictionary:
$ ./unix forth.dict
This is useful for testing.
* booting openbios
You can boot openbios i.e. in grub. Add the following lines to your menu.lst:
title openbios
kernel (hd0,2)/boot/openbios.multiboot
module (hd0,2)/boot/openfirmware.dict
Note: change (hd0,2) to the partition you copied openbios and forth.dict to.
To boot OpenBIOS from coreboot/etherboot, you can either use "openbios" or "openbios.full":
* openbios is the pure kernel that loads the dictionary from a hardcoded address in flash memory (0xfffe0000)
* openbios.full also includes the dictionary directly so that it can be easily used from etherboot or the coreboot builtin ELF loader without taking care of the dictionary
= Dictionary Format =
The dictionary is a linked list of forth word definitions. Each forth word in this list looks like the following:
name length of name in bytes + 0x80 align with 0's flags (bit 7 set) LFA CFA PFA
When the forth interpreter looks for a certain word, it reads the variable last that always points to the last defined word and iterates over the list until it finds an appropriate word.
= Glossary =
== Dictionary ==
* LFA == link field address (backlink)
* CFA == code field address ("word type")
* PFA == program field address (definitions)
== Forth Engine ==
* TIB == text input buffer
* inner interpreter: interprets dictionary, does threading
* outer interpreter: "user" interpreter, reads forth words from user.
acf749afaa28f4c94ccbc4901b6ce333d71e3e81
File:StefanReinauer.jpg
6
39
393
2008-09-15T09:29:18Z
WikiSysop
1
New picture
wikitext
text/x-wiki
New picture
25a7b066c9963a968de7ad8fe4410b3bb8f8190b
User:Stepan
2
18
277
276
2008-09-15T09:29:58Z
WikiSysop
1
/* About Stefan Reinauer */
wikitext
text/x-wiki
=== About Stefan Reinauer ===
Stefan founded the OpenBIOS project in 1997 and works on firmware related issues ever since. His company [http://www.coresystems.de/ coresystems GmbH] offers a variety of firmware and lowlevel related services.
[[Image:StefanReinauer.jpg]]
See http://www.coreboot.org/ for more information on coreboot
Contact Stefan Reinauer at <stepan at coresystems dot de>
Have a look at Stefan's private web page at http://www.stefan-reinauer.de/
c125d7f72c44d1bcbfae03610c86978d1cc36cb5
Mailinglist
0
11
96
95
2008-09-15T09:30:36Z
WikiSysop
1
wikitext
text/x-wiki
The OpenBIOS project currently has one mailing list which is intended for development, informational and general project purposes. You can subscribe to the OpenBIOS mailing list via a web interface or with a simple email (un-)subscription mechanism.
For questions and general information about OpenBIOS, subscribe to the OpenBIOS mailing list, at:
* http://www.openfirmware.info/mailman/listinfo/openbios
A mailing list archive dating back as far as February 1998 can be found at:
* http://www.openfirmware.info/pipermail/openbios
784db05b1c9bcfb7a7f7a0ebffb6febae31ce361
Credits
0
13
105
104
2008-09-15T09:31:33Z
WikiSysop
1
wikitext
text/x-wiki
Development contributions
Development contributions
* Stefan Reinauer (project coordination, main development)
* Patrick Mauritz (initial kernel work)
* Samuel Rydh (forth interfaces, MOL port, ...)
* BlueSwirl (Sparc/Sparc64 port)
* Greg Watson (briq port)
* [mailto:David@paktor.biz David Paktor] (improving Toke)
* Chen-Chau Chu (ppc fixes)
* Tim Barrett (detok patches)
* Krishna Myneni (permission to include kForth examples with toke)
Hardware/Funding
* Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development.
* [http://www.linuxfund.org/ LinuxFund.org] chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work!
* [http://www.newisys.com/ Newisys] funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openfirmware.info and www.coreboot.org.
* [http://sase.de/ Daniele Frijia] for donating a Motorola PPC-machine
If you or somebody else is missing on this list, send an email to Stefan Reinauer
f9b45b0c0ffffe48db5747a23cddadc976b68715
106
105
2009-03-01T20:55:23Z
BlueSwirl
14
wikitext
text/x-wiki
Development contributions
* Stefan Reinauer (project coordination, main development)
* Patrick Mauritz (initial kernel work)
* Samuel Rydh (forth interfaces, MOL port, ...)
* BlueSwirl (Sparc/Sparc64 port)
* Greg Watson (briq port)
* [mailto:David@paktor.biz David Paktor] (improving Toke)
* Chen-Chau Chu (ppc fixes)
* Tim Barrett (detok patches)
* Krishna Myneni (permission to include kForth examples with toke)
* Laurent Vivier (ppc/qemu port)
Patches and other contributions from
* Stefan Assmann
* Paul Brook
* Mark Cave-Ayland
* Justin Chevrier
* Peter Creath
* Alexander Graf
* Mike Hommey
* Aurelien Jarno
* Igor Kovalenko
Hardware/Funding
* Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development.
* [http://www.linuxfund.org/ LinuxFund.org] chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work!
* [http://www.newisys.com/ Newisys] funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openfirmware.info and www.coreboot.org.
* [http://sase.de/ Daniele Frijia] for donating a Motorola PPC-machine
If you or somebody else is missing on this list, send an email to Stefan Reinauer
f725f2ae186e64645955433d456fa53743d27725
MediaWiki:Sidebar
8
7
75
74
2008-09-15T09:33:50Z
WikiSysop
1
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Code of Conduct|Code of Conduct
** Credits|Credits
** Licensing|Licensing
* Implementations
** Open Firmware|Open Firmware
** SmartFirmware|Smart Firmware
** OpenBOOT|OpenBOOT
** OpenBIOS|OpenBIOS
** SLOF|SLOF
* Development
** FCODE suite|FCODE suite
** BeginAgain|Kernel
** FlashRom|Flashing
** http://tracker.coreboot.org/trac/openbios|Issues/Bugs
** Low Level Firmware
* Documentation
** IEEE 1275-1994|Open Firmware
** Bindings|Bindings and Supplements
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
64eebf1396bd841eb97381a4385f69863f8dd3b1
On the Net
0
20
305
304
2008-09-15T09:36:49Z
WikiSysop
1
/* Forth */
wikitext
text/x-wiki
__NOTOC__
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
* [http://www.coresystems.de coresystems GmbH]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://www.coreboot.org/Flashrom coreboot])
== Other Open Source Firmware Implementations ==
* [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation
* [http://cygwin.com/redboot/ redboot]
* SLOF
* [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware]
* SUN OpenBoot
* [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* [http://www.qemu.com/ QEMU]
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux
* Hypervisor
* ...
a60f938afeaf63d0a36ab61dfbd96fb811e976d3
306
305
2008-09-15T09:37:39Z
WikiSysop
1
/* Forth */
wikitext
text/x-wiki
__NOTOC__
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
* [http://www.coresystems.de coresystems GmbH]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://www.coreboot.org/Flashrom coreboot])
== Other Open Source Firmware Implementations ==
* [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation
* [http://cygwin.com/redboot/ redboot]
* SLOF
* [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware]
* SUN OpenBoot
* [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* [http://www.qemu.com/ QEMU]
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux
* Hypervisor
* ...
6877ee16d4c920c19cc9784985cb0c323855cd91
307
306
2010-05-06T15:07:26Z
Programmingkid
15
wikitext
text/x-wiki
__NOTOC__
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
* [http://www.coresystems.de coresystems GmbH]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://www.coreboot.org/Flashrom coreboot])
== Other Open Source Firmware Implementations ==
* [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation
* [http://cygwin.com/redboot/ redboot]
* SLOF
* [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware]
* SUN OpenBoot
* [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* [http://www.qemu.com/ QEMU]
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux
* Hypervisor
* ...
== OpenBIOS tutorial ==
* [http://www.openfirmware.info/Adding_words_to_openbios How to add words to OpenBIOS]
9f311d7b3b3e84aac85b26b9ea22237d2e60d932
308
307
2010-08-31T11:19:00Z
Stepan
2
/* Forth */
wikitext
text/x-wiki
__NOTOC__
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
* [http://www.coresystems.de coresystems GmbH]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* DPANS'94 [ [http://forth.sourceforge.net/standard/dpans/index.html HTML] ] | [ [http://openfirmware.info/data/dpans94.pdf PDF] ] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://www.coreboot.org/Flashrom coreboot])
== Other Open Source Firmware Implementations ==
* [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation
* [http://cygwin.com/redboot/ redboot]
* SLOF
* [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware]
* SUN OpenBoot
* [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* [http://www.qemu.com/ QEMU]
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux
* Hypervisor
* ...
== OpenBIOS tutorial ==
* [http://www.openfirmware.info/Adding_words_to_openbios How to add words to OpenBIOS]
6af1d870fce975cdd7e987312e2d2290ad6c275c
309
308
2010-08-31T11:19:41Z
Stepan
2
wikitext
text/x-wiki
__NOTOC__
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
* [http://www.coresystems.de coresystems GmbH]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* DPANS'94 [ [http://forth.sourceforge.net/standard/dpans/index.html HTML] ] | [ [http://www.openfirmware.info/data/docs/dpans94.pdf PDF] ] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://www.coreboot.org/Flashrom coreboot])
== Other Open Source Firmware Implementations ==
* [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation
* [http://cygwin.com/redboot/ redboot]
* SLOF
* [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware]
* SUN OpenBoot
* [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* [http://www.qemu.com/ QEMU]
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux
* Hypervisor
* ...
== OpenBIOS tutorial ==
* [http://www.openfirmware.info/Adding_words_to_openbios How to add words to OpenBIOS]
75933e0c3ac12d25895405b61f266a6e70a62a88
310
309
2010-09-25T19:58:55Z
Programmingkid
15
/* OpenBIOS tutorial */
wikitext
text/x-wiki
__NOTOC__
== Open Firmware Companies/Vendor support ==
* [http://www.codegen.com CodeGen]
* [http://www.firmworks.com FirmWorks]
* [http://www.sun.com SUN]
* [http://www.ibm.com IBM]
* [http://www.coresystems.de coresystems GmbH]
== Open Firmware Documentation ==
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson
* [http://www.openfirmware.org/ Open Firmware homepage]
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]
== Forth ==
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples
* DPANS'94 [ [http://forth.sourceforge.net/standard/dpans/index.html HTML] ] | [ [http://www.openfirmware.info/data/docs/dpans94.pdf PDF] ] - very interesting: annex D and E.
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com
== Stack Machines ==
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.
== Booting ==
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]
* GRUB2
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.
* [http://www.etherboot.org Etherboot]
* Redboot
== Flashing on Linux Systems ==
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)
* [http://www.uniflash.org/ Uniflash] (nonlinux)
* flashrom ([http://www.coreboot.org/Flashrom coreboot])
== Other Open Source Firmware Implementations ==
* [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation
* [http://cygwin.com/redboot/ redboot]
* SLOF
* [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware]
* SUN OpenBoot
* [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)
* ...
== Virtual Machines and Emulation ==
* [http://www.qemu.com/ QEMU]
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux
* Hypervisor
* ...
== OpenBIOS tutorial ==
* [http://www.openfirmware.info/Adding_words_to_openbios How to add words to OpenBIOS]
* [http://www.openfirmware.info/How_Local_Variables_in_Forth_Work_---_Using_Apple’s_Open_Firmware_Implementation How to use local variables]
183ff41cc7a41aec151f2289caad2463863b0167
OFW as a Coreboot Payload
0
40
394
2008-12-28T05:08:02Z
Wmb
5
Moved Coreboot+OFW instructions to a separate page
wikitext
text/x-wiki
This page tells how to build Open Firmware as a Coreboot payload and run it under QEMU. You can also run Open Firmware under QEMU without Coreboot:
* You can build a QEMU ROM image directly from code in the OFW tree - see [[Building OFW for QEMU]].
* You can boot OFW from a conventional BIOS - see [[Building OFW to Run Under BIOS]]
=== Software Requirements ===
* qemu-0.9.1
* Open Firmware rev. >= 1051
* coreboot >= v2
* GCC and GNU make - OFW builds with most versions; I'm not sure which versions Coreboot needs
=== Building Open Firmware ===
You need . Most versions will work.
Download the Open Firmware source:
svn co svn://openfirmware.info/openfirmware
Configure OFW for Coreboot:
cd openfirmware/cpu/x86/pc/biosload
cp config-coreboot.fth config.fth
Build OFW:
cd build
make
After make is finished (it shouldn't take long) there should be a file "ofwlb.elf" in the same directory. Copy this to your coreboot-v[x] directory.
=== Building coreboot ===
Follow the instructions in the coreboot documentation, using ofwlb.elf as your payload file.
=== Getting QEMU ===
Get QEMU >= 0.9.1 from http://bellard.org/qemu/download.html
Version 0.9.1 should "just work". It supports reasonably large ROM images, determining the emulated ROM size from the size of the image file. There was a "qemu_biossize.patch" for qemu-0.9.0, but the site that hosted that patch is defunct.
=== Run Your ROM Image ===
qemu -L coreboot-v3/build -hda path/to/disk.img -serial `tty` -nographic
=== Ideas for Improvement ===
These instructions build a rather plain OFW configuration that lacks drivers for several of QEMU's specific I/O devices (Ethernet, video, sound). Suitable drivers are in the OFW tree, and are included in the QEMU build described in [[Building OFW for QEMU]]. It would be nice to add those drivers to the configuration described herein. If the Cirrus video driver were added, qemu could be used in graphic mode.
__NOEDITSECTION__
70d1da7726dab6dba42c83bc85ef0392a7ef0f1f
395
394
2008-12-28T05:09:22Z
Wmb
5
Fixed a typo
wikitext
text/x-wiki
This page tells how to build Open Firmware as a Coreboot payload and run it under QEMU. You can also run Open Firmware under QEMU without Coreboot:
* You can build a QEMU ROM image directly from code in the OFW tree - see [[Building OFW for QEMU]].
* You can boot OFW from a conventional BIOS - see [[Building OFW to Run Under BIOS]]
=== Software Requirements ===
* qemu-0.9.1
* Open Firmware rev. >= 1051
* coreboot >= v2
* GCC and GNU make - OFW builds with most versions; I'm not sure which versions Coreboot needs
=== Building Open Firmware ===
Download the Open Firmware source:
svn co svn://openfirmware.info/openfirmware
Configure OFW for Coreboot:
cd openfirmware/cpu/x86/pc/biosload
cp config-coreboot.fth config.fth
Build OFW:
cd build
make
After make is finished (it shouldn't take long) there should be a file "ofwlb.elf" in the same directory. Copy this to your coreboot-v[x] directory.
=== Building coreboot ===
Follow the instructions in the coreboot documentation, using ofwlb.elf as your payload file.
=== Getting QEMU ===
Get QEMU >= 0.9.1 from http://bellard.org/qemu/download.html
Version 0.9.1 should "just work". It supports reasonably large ROM images, determining the emulated ROM size from the size of the image file. There was a "qemu_biossize.patch" for qemu-0.9.0, but the site that hosted that patch is defunct.
=== Run Your ROM Image ===
qemu -L coreboot-v3/build -hda path/to/disk.img -serial `tty` -nographic
=== Ideas for Improvement ===
These instructions build a rather plain OFW configuration that lacks drivers for several of QEMU's specific I/O devices (Ethernet, video, sound). Suitable drivers are in the OFW tree, and are included in the QEMU build described in [[Building OFW for QEMU]]. It would be nice to add those drivers to the configuration described herein. If the Cirrus video driver were added, qemu could be used in graphic mode.
__NOEDITSECTION__
c114ca869fc816fb3095477525ec304c69df128c
396
395
2011-03-18T22:04:59Z
Wmb
5
Page rename
wikitext
text/x-wiki
This page tells how to build Open Firmware as a Coreboot payload and run it under QEMU. You can also run Open Firmware under QEMU without Coreboot:
* You can build a QEMU ROM image directly from code in the OFW tree - see [[Building OFW for QEMU]].
* You can boot OFW from a conventional BIOS - see [[Building OFW to Load from BIOS]]
=== Software Requirements ===
* qemu-0.9.1
* Open Firmware rev. >= 1051
* coreboot >= v2
* GCC and GNU make - OFW builds with most versions; I'm not sure which versions Coreboot needs
=== Building Open Firmware ===
Download the Open Firmware source:
svn co svn://openfirmware.info/openfirmware
Configure OFW for Coreboot:
cd openfirmware/cpu/x86/pc/biosload
cp config-coreboot.fth config.fth
Build OFW:
cd build
make
After make is finished (it shouldn't take long) there should be a file "ofwlb.elf" in the same directory. Copy this to your coreboot-v[x] directory.
=== Building coreboot ===
Follow the instructions in the coreboot documentation, using ofwlb.elf as your payload file.
=== Getting QEMU ===
Get QEMU >= 0.9.1 from http://bellard.org/qemu/download.html
Version 0.9.1 should "just work". It supports reasonably large ROM images, determining the emulated ROM size from the size of the image file. There was a "qemu_biossize.patch" for qemu-0.9.0, but the site that hosted that patch is defunct.
=== Run Your ROM Image ===
qemu -L coreboot-v3/build -hda path/to/disk.img -serial `tty` -nographic
=== Ideas for Improvement ===
These instructions build a rather plain OFW configuration that lacks drivers for several of QEMU's specific I/O devices (Ethernet, video, sound). Suitable drivers are in the OFW tree, and are included in the QEMU build described in [[Building OFW for QEMU]]. It would be nice to add those drivers to the configuration described herein. If the Cirrus video driver were added, qemu could be used in graphic mode.
__NOEDITSECTION__
60d8be5c02baa4911e0f90673c1900868177d094
Open Firmware
0
33
379
378
2008-12-28T08:11:08Z
Wmb
5
Updated with new information and links to version-specific build instructions
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation (OFW) under a BSD license. This code shares some code with SUN's OpenBOOT implementation. The open source OFW supports x86, PowerPC, and ARM architectures. Other architectures, including SPARC and MIPS, may be added as time and interest dictate.
The x86 version is used on the OLPC "XO" computer. The x86 version can be configured for numerous other environments, including
* Direct QEMU ROM (replacing the "bios.bin" that is supplied with QEMU
* Coreboot payload
* Loadable on directly on top of a conventional PC BIOS (booted from floppy or hard disk like an OS). In this configuration it can run on an arbitrary PC, or on an emulator like QEMU, VirtualBox, or VMWare.
OFW can boot Linux directly from a disk file (FAT, ext2, ISO9660, or jffs2 filesystems) without the need for an intermediate bootloader like LILO or GRUB. The Linux image can be in either ELF format (as created by the first phase of the Linux kernel compilation process) or in the "bzImage" format that "wraps" the ELF image. When booting an ELF image, OFW can read the ELF symbol table so OFW's assembly language debugger can resolve kernel symbols.
OFW can also boot other ELF standalone images, providing to them rudimentary "libc" capability. That facility has been used for booting, for example, Minix, ReactOS, Plan9, Inferno and SqueakNOS. The OLPC system ROM includes several such "standalone client programs", including MicroEMACS, memtest86, and NANDblaster (a facility for fast OS updates over multicast wireless).
On the OLPC system, OFW emulates enough legacy BIOS "real mode INTs" to boot Windows XP. On another system, OFW supports booting Windows CE.
== Download ==
You can [http://tracker.coreboot.org/trac/openfirmware/browser browse the source code online].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openfirmware.info/openfirmware/
if you want a specific revision:
$ svn co svn://openfirmware.info/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openfirmware.info/openfirmware-svn/ openfirmware</nowiki>
==Building Different Versions==
* Direct QEMU ROM: see [[Building OFW for QEMU]]
* Coreboot: see [[OFW as a Coreboot Payload]]
* OLPC: see [[Building OFW for OLPC]]
* BIOS-loaded: see [[Building OFW to Run Under BIOS]]
== Mailing List ==
There's an Open Firmware mailing list at:
* http://www.openfirmware.info/mailman/listinfo/openfirmware.
The mailing list archive is also available:
* http://www.openfirmware.info/pipermail/openfirmware/
525d712ccfd27242fab7cb4c88c1e52532ea0185
380
379
2010-08-10T18:11:46Z
Wmb
5
/* Added ARM building link */
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation (OFW) under a BSD license. This code shares some code with SUN's OpenBOOT implementation. The open source OFW supports x86, PowerPC, and ARM architectures. Other architectures, including SPARC and MIPS, may be added as time and interest dictate.
The x86 version is used on the OLPC "XO" computer. The x86 version can be configured for numerous other environments, including
* Direct QEMU ROM (replacing the "bios.bin" that is supplied with QEMU
* Coreboot payload
* Loadable on directly on top of a conventional PC BIOS (booted from floppy or hard disk like an OS). In this configuration it can run on an arbitrary PC, or on an emulator like QEMU, VirtualBox, or VMWare.
OFW can boot Linux directly from a disk file (FAT, ext2, ISO9660, or jffs2 filesystems) without the need for an intermediate bootloader like LILO or GRUB. The Linux image can be in either ELF format (as created by the first phase of the Linux kernel compilation process) or in the "bzImage" format that "wraps" the ELF image. When booting an ELF image, OFW can read the ELF symbol table so OFW's assembly language debugger can resolve kernel symbols.
OFW can also boot other ELF standalone images, providing to them rudimentary "libc" capability. That facility has been used for booting, for example, Minix, ReactOS, Plan9, Inferno and SqueakNOS. The OLPC system ROM includes several such "standalone client programs", including MicroEMACS, memtest86, and NANDblaster (a facility for fast OS updates over multicast wireless).
On the OLPC system, OFW emulates enough legacy BIOS "real mode INTs" to boot Windows XP. On another system, OFW supports booting Windows CE.
== Download ==
You can [http://tracker.coreboot.org/trac/openfirmware/browser browse the source code online].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openfirmware.info/openfirmware/
if you want a specific revision:
$ svn co svn://openfirmware.info/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openfirmware.info/openfirmware-svn/ openfirmware</nowiki>
==Building Different Versions==
* Direct QEMU ROM: see [[Building OFW for QEMU]]
* Coreboot: see [[OFW as a Coreboot Payload]]
* OLPC: see [[Building OFW for OLPC]]
* BIOS-loaded: see [[Building OFW to Run Under BIOS]]
* ARM: see [[Building OFW for ARM]]
== Mailing List ==
There's an Open Firmware mailing list at:
* http://www.openfirmware.info/mailman/listinfo/openfirmware.
The mailing list archive is also available:
* http://www.openfirmware.info/pipermail/openfirmware/
6d3755b839c4b28d5b24a4ac9a46c6e9a67f33ca
381
380
2011-03-18T22:02:14Z
Wmb
5
/* Page rename */
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation (OFW) under a BSD license. This code shares some code with SUN's OpenBOOT implementation. The open source OFW supports x86, PowerPC, and ARM architectures. Other architectures, including SPARC and MIPS, may be added as time and interest dictate.
The x86 version is used on the OLPC "XO" computer. The x86 version can be configured for numerous other environments, including
* Direct QEMU ROM (replacing the "bios.bin" that is supplied with QEMU
* Coreboot payload
* Loadable on directly on top of a conventional PC BIOS (booted from floppy or hard disk like an OS). In this configuration it can run on an arbitrary PC, or on an emulator like QEMU, VirtualBox, or VMWare.
OFW can boot Linux directly from a disk file (FAT, ext2, ISO9660, or jffs2 filesystems) without the need for an intermediate bootloader like LILO or GRUB. The Linux image can be in either ELF format (as created by the first phase of the Linux kernel compilation process) or in the "bzImage" format that "wraps" the ELF image. When booting an ELF image, OFW can read the ELF symbol table so OFW's assembly language debugger can resolve kernel symbols.
OFW can also boot other ELF standalone images, providing to them rudimentary "libc" capability. That facility has been used for booting, for example, Minix, ReactOS, Plan9, Inferno and SqueakNOS. The OLPC system ROM includes several such "standalone client programs", including MicroEMACS, memtest86, and NANDblaster (a facility for fast OS updates over multicast wireless).
On the OLPC system, OFW emulates enough legacy BIOS "real mode INTs" to boot Windows XP. On another system, OFW supports booting Windows CE.
== Download ==
You can [http://tracker.coreboot.org/trac/openfirmware/browser browse the source code online].
The repository is available through Subversion:
You can check it out as follows:
$ svn co svn://openfirmware.info/openfirmware/
if you want a specific revision:
$ svn co svn://openfirmware.info/openfirmware -r 35
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openfirmware.info/openfirmware-svn/ openfirmware</nowiki>
==Building Different Versions==
* Direct QEMU ROM: see [[Building OFW for QEMU]]
* Coreboot: see [[OFW as a Coreboot Payload]]
* OLPC: see [[Building OFW for OLPC]]
* BIOS-loaded: see [[Building OFW to Load from BIOS]]
* ARM: see [[Building OFW for ARM]]
== Mailing List ==
There's an Open Firmware mailing list at:
* http://www.openfirmware.info/mailman/listinfo/openfirmware.
The mailing list archive is also available:
* http://www.openfirmware.info/pipermail/openfirmware/
faddbbbd85de89a455eff3e3ae694e65e130a8d1
Building OFW for QEMU
0
41
397
2008-12-28T10:16:13Z
Wmb
5
Detailed instructions for using OFW with QEMU.
wikitext
text/x-wiki
This page tells how to build the x86 version of Open Firmware to run under the QEMU emulator. In this version, OFW replaces QEMU's normal "bios.bin" file, so QEMU boots directly into OFW, without a conventional BIOS. This version supports most of QEMU's I/O capabilities, illustrating some of the things that OFW can do. See the [[#QEMU Options / Things to Try]] section.
The OFW tree contains a version of the platform-specific "early startup" code that is suitable for initializing QEMU's virtual hardware. The early-startup code for QEMU is as simple as such code can possibly be, because the QEMU core system "hardware" requires no initialization. On real hardware, you must turn on PLLs, configure bus bridges and superIO chips, detect DRAM characteristics and configure memory controllers, and do other complex chipset-dependent things in the early stages of startup. QEMU omits all that "magic" stuff that is outside of generic x86 programming models, so the only system-specific early startup code for QEMU is a simple memory sizing loop.
In addition to this "direct" version, there are two other ways to run OFW under QEMU:
* You can build OFW as "payload" for Coreboot, so Core boot does the early-startup stuff - see [[OFW as a Coreboot Payload]].
* You can boot OFW from a conventional BIOS - see [[Building OFW to Run Under BIOS]]
=== Software Requirements ===
* qemu-0.9.1
* Open Firmware rev. >= 1051
* GCC and GNU make - OFW builds with most versions
=== Getting QEMU ===
Get QEMU >= 0.9.1 from http://bellard.org/qemu/download.html
=== Building Open Firmware ===
Get the Open Firmware source:
svn co svn://openfirmware.info/openfirmware
Build OFW:
cd openfirmware/cpu/x86/pc/emu/build
make
After make is finished (it shouldn't take long) there should be a file "emuofw.rom" in the build directory. Copy this to your qemu directory.
=== Run Your ROM Image ===
qemu -L . -bios emuofw.rom -hda fat:.
That is the basic invocation; you should get a console window with OFW running in it. OFW is using the emulated Cirrus graphics display in linear framebuffer mode, not in VGA mode.
=== QEMU Options / Things to Try ===
QEMU has lots of options that let you do all sorts of fun things. The following sections illustrate a few of OFW's I/O capabilities.
==== Memory Size ====
If you look in OFW's startup banner, you should see "128 MiB memory installed". That is QEMU's default memory size. You can change that by adding "-m NNN" to the qemu command line, for example:
qemu -L . -bios emuofw.rom -hda fat:. -m 32
OFW as configured will work with power-of-two size between 32 and 2048 MiB (although my QEMU installation only works up to 1024 MB). Those limits aren't inherent inheret OFW, but rather artifacts of the way this particular "port" is configured.
==== Hard Disk Images ====
The command line argument "-hda fat:." as shown above makes the current directory on the host system appear to OFW as an IDE hard disk with a read-only FAT filesystem. You can inspect it with:
ok .partitions c
ok dir c:\
The device name "c" is a devalias. You can see the actual device name with:
ok devalias c
ok devalias
Instead of that "virtual FAT filesystem", you can make use Linux tools to make a filesystem image. In this example, we'll create a 10 MByte image with a single partition and an ext2 filesystem:
$ dd if=/dev/zero of=filesystem.img bs=1M count=10
$ /sbin/mke2fs -F filesystem.img
$ dd if=filesystem.img of=fs.img bs=512 seek=1
$ rm filesystem.img
$ /sbin/sfdisk -L -uS -C 10 -H 64 -S 32 fs.img <<EOF
,,L,*
;
;
;
EOF
$ mkdir mnt
$ sudo mount -o loop,offset=512 fs.img mnt
$ # Now copy some files to "mnt"
$ sudo umount mnt
$ qemu -L . -bios emuofw.rom -hda fs.img
In the QEMU OFW console window:
ok dir c:\
In the recipe above, the total size (10 MiB) appears on the first "dd" line (count=10) and on the "sfdisk" line (-C 10). The sfdisk values for heads (-H 64) and sectors (-S 32) are set so that the cylinder size is 1MiB (64*32*512), making it easy to set the overall size with the cylinders (-C) argument. It is more common to use the maximum values -H 255 -S 63 in order to maximize the possible overall size, but that results in a cylinder size of just under 8M, which isn't quite as easy to work with for this example. The recipe uses two "dd" lines instead of making the image file in one step because the "mke2fs" command doesn't give you the option of skipping the first sector where the partition map has to be located.
==== Serial Console ====
You can tell QEMU to emulate a serial port by adding "-serial NAME" to the command line, as with:
$ qemu -L . -bios emuofw.rom -hda fat:. -serial `tty`
Then you can tell OFW to use the serial console with:
ok com1 io
QEMU has lots of options for directing the emulated serial port to various places, including real serial ports on the host system and network connections to other machines. Read the [http://bellard.org/qemu/qemu-doc.html QEMU documentation] (-serial option) for more information.
You can configure OFW to use the serial port by default, instead of the graphics screen and emulated PC keyboard. To do so, uncomment the line "create serial-console" in openfirmware/cpu/x86/emu/config.fth and re-execute the "make" command. Serial consoles are convenient because it's usually easy to cut-and-paste Forth code into the window that is acting as the "terminal emulator" for the serial console; you can't paste into QEMU's graphical console.
==== Networking ====
OFW has an extensive network stack, supporting many protocols including TFTP, NFS, HTTP (client and server), and Telnet (client and server). Here's an example qemu command line with networking support enabled:
$ qemu -L . -bios emuofw.rom -hda fat:. -net nic,model=pcnet -net tap
Consult the [http://bellard.org/qemu/qemu-doc.html QEMU documentation] (the "-net" option) to learn how to configure the "tap" interface to connect through to the real network.
Here are some OFW networking commands that you might want to try:
ok watch-net
ok debug-net
ok ping yahoo.com
ok undebug-net
ok ping firmworks.com
ok more http:\\firmworks.com\hello.fth
ok fload http:\\firmworks.com\hello.fth
ok telnetd
telnet://10.20.0.107
Now start a telnet client on some machine, connecting to the IP address shown.
Quitting the telnet client restores the OFW prompt to the QEMU console.
ok telnet 10.20.0.5
Instead of "10.20.0.5", use the hostname or IP address of a telnet server. To exit, type Ctrl-] .
ok httpd
http://10.20.0.107
Browse to the URL shown. Type any key on the QEMU console to exit the HTTP server. In addition to static pages, the HTTP server can do server-side scripting with Forth, and of course you do client-side scripting by serving up Javascript or Java pages. This facility has been used for an interactive embedded system with a Web interface programmed entirely in Open Firmware - a multi-headed high-speed camera for real-time analysis of golf clubs and golf swings.
OFW also supports IPV6 networking, but it's not compiled into this version.
You can, of course, boot operating systems over the network, using TFTP, NFS, or HTTP.
==== Graphics ====
OFW uses the display in linear framebuffer mode, so it can display 2D graphics. To see a simple demo:
ok fload http:\\firmworks.com\testrect.fth
To clear the screen afterwards:
ok page
OFW has a graphical menu system that is not enabled in this configuration. You can navigate it with either the mouse or the keyboard. OFW can display .BMP files.
==== USB ====
To make QEMU emulate a USB mass storage device, do this:
$ qemu -L . -bios emuofw.rom -hda fat:. -usbdevice disk:fat:.
Then, in OFW:
ok probe-usb
ok dir u:\
"p2" is an alias for "probe-usb" for us lazy people. Since OFW tries not to do stuff "behind your back", if you plug in a new USB device, you must tell OFW to rescan the USB bus. In this case, it will have already scanned the device (it does that automatically at startup), but rescanning is a convenient way to get OFW to show you what is there. You could instead say:
ok show-devs usb
but "p2" is easier to type.
In the qemu command, you could attach a writable disk image with, for example:
$ qemu -L . -bios emuofw.rom -hda fat:. -usbdevice disk:fs.img
assuming that you have created a suitable fs.img file as per the instructions above. You can't use the same writable image for both -hda and -usbdevice, but it's okay to use the same read-only image (as with the fat:<directory> syntax) for both.
OFW has reasonably good support for a wide selection of USB mass storage devices - flash keys, disks, CDROMs, multi-card readers, etc. OFW also supports USB keyboards, but I haven't yet figured out how to make that work under QEMU. OFW supports some USB 2.0 network interfaces and some USB-to-serial adapters. You might be able to make those work using QEMU's ability to connect to real USB devices on the host. On real hardware, OFW supports UHCI (USB 1.1), OHCI (USB 1.1), and EHCI (USB 2.0) host controllers.
==== Sound ====
To enable sound support in QEMU, do this:
$ qemu -L . -bios emuofw.rom -hda fat:. -soundhw sb
In OFW:
ok select /sound
ok d# 200 d# 2000 tone
ok unselect
That plays a 200 Hz sine wave for 2 seconds (2000 mS). OFW can also play .wav files, but that's not included in this configuration.
QEMU has a lot of options to control the sound emulation; read the documentation to get totally confused.
OFW's SoundBlaster driver, as included in this configuration, is rather rudimentary. OFW has better drivers for the more common AC97 sound hardware.
__NOEDITSECTION__
0babc837eba71ba0eefdce47c1da1e7d534ca528
Building OFW for OLPC
0
42
399
2008-12-28T10:52:45Z
Wmb
5
OLPC OFW build instructions
wikitext
text/x-wiki
This page tells how to build the OLPC (One Laptop Per Child) version of Open Firmware. This is the version of OFW that is normally shipped on that machine. You can get precompiled ROMs from http://dev.laptop.org/pub/firmware , so you only need to recompile from source if you want to change something. See http://wiki.laptop.org/go/Firmware for version history.
=== Software Requirements ===
* Open Firmware source code
* GCC and GNU make - most versions are okay for building OFW
* IASL (Intel ASL compiler, for compiling ACPI tables) - most Linux distributions have an "iasl" package.
=== Building Open Firmware ===
Get the Open Firmware source:
svn co svn://openfirmware.info/openfirmware
Build OFW:
cd openfirmware/cpu/x86/pc/olpc/build
make
The last line of the compilation output should say something like:
--- Saving as q2e24.rom
That tells you the name of the output file. You can install it in your OLPC XO computer by copying that file to a USB FLASH key, inserting the key into the XO, and typing on the XO:
ok flash u:\q2e24.rom
2e03863af76ec4bd75d9340d6d33bbe39be4eb64
Building OFW to Load from BIOS
0
43
400
2008-12-28T11:35:29Z
Wmb
5
Instructions for building OFW to boot under a conventional BIOS
wikitext
text/x-wiki
This page tells how to build the x86 version of Open Firmware to boot under a conventional BIOS. These instructions specifically describe a configuration that is good for running on the QEMU and VirtualBox emulators, but very similar instructions can be used to make a version that runs on any PC. In this version, OFW is stored on a floppy disk image. The conventional BIOS boots it as if it were an operating system like DOS or Windows. OFW then "takes over" the machine, ignoring the conventional BIOS that booted it. That BIOS has already done the work of early-startup machine initialization - turning on the memory controller and configuring chipset-dependent registers.
In addition to this BIOS-loaded version, there are two other ways to run OFW under QEMU:
* * You can build an OFW image that replaces the QEMU BIOS ROM image, entirely from code in the OFW tree - see [[Building OFW for QEMU]].
* You can build an OFW image that replaces the QEMU BIOS ROM image, using OFW as a "payload" for Coreboot, so Coreboot does the early-startup stuff - see [[OFW as a Coreboot Payload]].
=== Software Requirements ===
* qemu-0.9.1 or VirtualBox
* Open Firmware rev. >= 1051
* GCC and GNU make - most versions work for builing OFW
=== Building Open Firmware ===
Get the Open Firmware source:
svn co svn://openfirmware.info/openfirmware
=== Build OFW ===
$ cd cpu/x86/pc/biosload/
$ cp config-virtualbox.fth config.fth
$ cd build
$ make floppyofw.img
The "config-virtualbox.fth" configuration is known to work with QEMU.
Other configurations may work also - but the "qemu-loaded" config
option isn't what you want for this technique, because it's a subcase
of the CoreBoot-payload configuration.
You will use the "floppyofw.img" output file in a later step.
=== Make a bootable Floppy Image ===
$ ../../../Linux/forth fw.dic ../makefloppy.fth
This creates a file that is a bootable floppy image with an empty
FAT12 filesystem. This step only has to be done once.
=== Copy OFW onto the Floppy Image ===
$ mkdir flp
$ sudo mount -t msdos -o loop floppy.img flp
$ sudo cp floppyofw.img flp/ofw.img
$ sudo umount flp
Copy floppy.img to the QEMU or VirtualBox directory.
=== Boot OFW from QEMU ===
$ qemu -L <dir> -boot a -fda floppy.img
"<dir>" is the directory that contains QEMU's BIOS and VGA BIOS files.
=== Boot OFW from VirtualBox ===
The following VirtualBox configuration settings work for me:
OS Type = Other/Unknown
Base Memory = 64 MB
Video Memory = 8 MB
Boot Order = Floppy, Hard Disk
ACPI = Disabled
IO APIC = Disabled
VT-x/AMD-V = Disabled
PAE/NX = Disabled
Floppy Image = floppy.img
Network Adapter 1 = PCnet-PCI II (host interface, <tap name>)
(other settings are mostly irrelevant)
=== Recompiling ===
If you want to make changes and recompile OFW, you need not repeat the
"makefloppy" step; you can just loopback mount the floppy image and
copy the new OFW version to ofw.img .
== What is on the Floppy Image ==
The floppy image is a bootable floppy with a FAT12 filesystem. Its first two
sectors contain a simple bootloader program that uses BIOS INT 13 callbacks to
read floppy sectors. The program scans the FAT root directory entries to find
the file "ofw.img", then loads that into memory and jumps to it.
When you build floppyofw.img, as a side effect it also builds bootsec.img, which
is that simple bootloader. The source code (Forth-style assembly language) is in
biosload/bootsec.fth .
The "makefloppy.fth" program that creates the image is pretty simple; it copies
bootsec.img to the output file "floppy.img", creates a couple of initially
empty FAT tables, zeros the root directory area, and fills the data area with
zeros.
== Making a Prototype Floppy Image with Linux Commands ==
Here's a pair of Linux commands that accomplish the same thing
as makefloppy.fth:
Step6a $ /sbin/mkdosfs -C -f 2 -F 12 -R 2 -r 224 -s 1 -S 512 floppy.img 1440
Step6b $ dd <bootsec.img of=floppy.img conv=nocreat,notrunc
The arguments to mkdosfs force the filesystem layout to match the layout that
is specified in the BIOS parameter block in bootsec.img.
The advantage of makefloppy.fth is that it reads the filesystem layout parameters
from the BPB in bootsec.img, so its guaranteed to be consistent. If bootsec.fth
were edited to change the layout, the arguments to "mkdosfs" would have to change.
(But there's little need to change that layout, since it's a standard floppy
size.)
The advantage of the Linux command sequence is that it creates a file with
"holes", thus saving disk space for awhile (until something fills in the holes).
=== Booting on a Real PC from a USB Key ===
To build for a real PC:
$ cd openfirmware/cpu/x86/biosload
$ cp config-usbkey.fth config.fth
$ cd build
$ make
That will create a file named "ofw.c32" that can be booted from a USB key that has "syslinux" installed on it. http://www.911cd.net/forums//index.php?showtopic=21902 has some tips on how to install syslinux.
Your syslinux.cfg file needs a line that says:
kernel ofw.c32
(There is also some support in the source code / config.fth for building a version to boot via Grub, but I haven't tested that for some time, so it might be broken.)
199621a67f7486caa399bc6caf4994dad42c9a91
401
400
2008-12-28T11:38:18Z
Wmb
5
formatting
wikitext
text/x-wiki
This page tells how to build the x86 version of Open Firmware to boot under a conventional BIOS. These instructions specifically describe a configuration that is good for running on the QEMU and VirtualBox emulators, but very similar instructions can be used to make a version that runs on any PC. In this version, OFW is stored on a floppy disk image. The conventional BIOS boots it as if it were an operating system like DOS or Windows. OFW then "takes over" the machine, ignoring the conventional BIOS that booted it. That BIOS has already done the work of early-startup machine initialization - turning on the memory controller and configuring chipset-dependent registers.
In addition to this BIOS-loaded version, there are two other ways to run OFW under QEMU:
* * You can build an OFW image that replaces the QEMU BIOS ROM image, entirely from code in the OFW tree - see [[Building OFW for QEMU]].
* You can build an OFW image that replaces the QEMU BIOS ROM image, using OFW as a "payload" for Coreboot, so Coreboot does the early-startup stuff - see [[OFW as a Coreboot Payload]].
=== Software Requirements ===
* qemu-0.9.1 or VirtualBox
* Open Firmware rev. >= 1051
* GCC and GNU make - most versions work for builing OFW
=== Getting Open Firmware Source ===
$ svn co svn://openfirmware.info/openfirmware
=== Building OFW ===
$ cd cpu/x86/pc/biosload/
$ cp config-virtualbox.fth config.fth
$ cd build
$ make floppyofw.img
The "config-virtualbox.fth" configuration is known to work with QEMU.
Other configurations may work also - but the "qemu-loaded" config
option isn't what you want for this technique, because it's a subcase
of the CoreBoot-payload configuration.
You will use the "floppyofw.img" output file in a later step.
=== Making a bootable Floppy Image ===
$ ../../../Linux/forth fw.dic ../makefloppy.fth
This creates a file that is a bootable floppy image with an empty
FAT12 filesystem. This step only has to be done once.
=== Copying OFW onto the Floppy Image ===
$ mkdir flp
$ sudo mount -t msdos -o loop floppy.img flp
$ sudo cp floppyofw.img flp/ofw.img
$ sudo umount flp
Copy floppy.img to the QEMU or VirtualBox directory.
=== Booting OFW from QEMU ===
$ qemu -L <dir> -boot a -fda floppy.img
"<dir>" is the directory that contains QEMU's BIOS and VGA BIOS files.
=== Booting OFW from VirtualBox ===
The following VirtualBox configuration settings work for me:
OS Type = Other/Unknown
Base Memory = 64 MB
Video Memory = 8 MB
Boot Order = Floppy, Hard Disk
ACPI = Disabled
IO APIC = Disabled
VT-x/AMD-V = Disabled
PAE/NX = Disabled
Floppy Image = floppy.img
Network Adapter 1 = PCnet-PCI II (host interface, <tap name>)
(other settings are mostly irrelevant)
=== Recompiling ===
If you want to make changes and recompile OFW, you need not repeat the
"makefloppy" step; you can just loopback mount the floppy image and
copy the new OFW version to ofw.img .
=== What is on the Floppy Image ===
The floppy image is a bootable floppy with a FAT12 filesystem. Its first two
sectors contain a simple bootloader program that uses BIOS INT 13 callbacks to
read floppy sectors. The program scans the FAT root directory entries to find
the file "ofw.img", then loads that into memory and jumps to it.
When you build floppyofw.img, as a side effect it also builds bootsec.img, which
is that simple bootloader. The source code (Forth-style assembly language) is in
biosload/bootsec.fth .
The "makefloppy.fth" program that creates the image is pretty simple; it copies
bootsec.img to the output file "floppy.img", creates a couple of initially
empty FAT tables, zeros the root directory area, and fills the data area with
zeros.
=== Making a Prototype Floppy Image with Linux Commands ===
Here's a pair of Linux commands that accomplish the same thing
as makefloppy.fth:
Step6a $ /sbin/mkdosfs -C -f 2 -F 12 -R 2 -r 224 -s 1 -S 512 floppy.img 1440
Step6b $ dd <bootsec.img of=floppy.img conv=nocreat,notrunc
The arguments to mkdosfs force the filesystem layout to match the layout that
is specified in the BIOS parameter block in bootsec.img.
The advantage of makefloppy.fth is that it reads the filesystem layout parameters
from the BPB in bootsec.img, so its guaranteed to be consistent. If bootsec.fth
were edited to change the layout, the arguments to "mkdosfs" would have to change.
(But there's little need to change that layout, since it's a standard floppy
size.)
The advantage of the Linux command sequence is that it creates a file with
"holes", thus saving disk space for awhile (until something fills in the holes).
=== Booting on a Real PC from a USB Key ===
To build for a real PC:
$ cd openfirmware/cpu/x86/biosload
$ cp config-usbkey.fth config.fth
$ cd build
$ make
That will create a file named "ofw.c32" that can be booted from a USB key that has "syslinux" installed on it. http://www.911cd.net/forums//index.php?showtopic=21902 has some tips on how to install syslinux.
Your syslinux.cfg file needs a line that says:
kernel ofw.c32
(There is also some support in the source code / config.fth for building a version to boot via Grub, but I haven't tested that for some time, so it might be broken.)
efcb2a388c5e4e4c10a4c497364dc9379dc4d9bc
402
401
2008-12-28T11:38:49Z
Wmb
5
typo
wikitext
text/x-wiki
This page tells how to build the x86 version of Open Firmware to boot under a conventional BIOS. These instructions specifically describe a configuration that is good for running on the QEMU and VirtualBox emulators, but very similar instructions can be used to make a version that runs on any PC. In this version, OFW is stored on a floppy disk image. The conventional BIOS boots it as if it were an operating system like DOS or Windows. OFW then "takes over" the machine, ignoring the conventional BIOS that booted it. That BIOS has already done the work of early-startup machine initialization - turning on the memory controller and configuring chipset-dependent registers.
In addition to this BIOS-loaded version, there are two other ways to run OFW under QEMU:
* You can build an OFW image that replaces the QEMU BIOS ROM image, entirely from code in the OFW tree - see [[Building OFW for QEMU]].
* You can build an OFW image that replaces the QEMU BIOS ROM image, using OFW as a "payload" for Coreboot, so Coreboot does the early-startup stuff - see [[OFW as a Coreboot Payload]].
=== Software Requirements ===
* qemu-0.9.1 or VirtualBox
* Open Firmware rev. >= 1051
* GCC and GNU make - most versions work for builing OFW
=== Getting Open Firmware Source ===
$ svn co svn://openfirmware.info/openfirmware
=== Building OFW ===
$ cd cpu/x86/pc/biosload/
$ cp config-virtualbox.fth config.fth
$ cd build
$ make floppyofw.img
The "config-virtualbox.fth" configuration is known to work with QEMU.
Other configurations may work also - but the "qemu-loaded" config
option isn't what you want for this technique, because it's a subcase
of the CoreBoot-payload configuration.
You will use the "floppyofw.img" output file in a later step.
=== Making a bootable Floppy Image ===
$ ../../../Linux/forth fw.dic ../makefloppy.fth
This creates a file that is a bootable floppy image with an empty
FAT12 filesystem. This step only has to be done once.
=== Copying OFW onto the Floppy Image ===
$ mkdir flp
$ sudo mount -t msdos -o loop floppy.img flp
$ sudo cp floppyofw.img flp/ofw.img
$ sudo umount flp
Copy floppy.img to the QEMU or VirtualBox directory.
=== Booting OFW from QEMU ===
$ qemu -L <dir> -boot a -fda floppy.img
"<dir>" is the directory that contains QEMU's BIOS and VGA BIOS files.
=== Booting OFW from VirtualBox ===
The following VirtualBox configuration settings work for me:
OS Type = Other/Unknown
Base Memory = 64 MB
Video Memory = 8 MB
Boot Order = Floppy, Hard Disk
ACPI = Disabled
IO APIC = Disabled
VT-x/AMD-V = Disabled
PAE/NX = Disabled
Floppy Image = floppy.img
Network Adapter 1 = PCnet-PCI II (host interface, <tap name>)
(other settings are mostly irrelevant)
=== Recompiling ===
If you want to make changes and recompile OFW, you need not repeat the
"makefloppy" step; you can just loopback mount the floppy image and
copy the new OFW version to ofw.img .
=== What is on the Floppy Image ===
The floppy image is a bootable floppy with a FAT12 filesystem. Its first two
sectors contain a simple bootloader program that uses BIOS INT 13 callbacks to
read floppy sectors. The program scans the FAT root directory entries to find
the file "ofw.img", then loads that into memory and jumps to it.
When you build floppyofw.img, as a side effect it also builds bootsec.img, which
is that simple bootloader. The source code (Forth-style assembly language) is in
biosload/bootsec.fth .
The "makefloppy.fth" program that creates the image is pretty simple; it copies
bootsec.img to the output file "floppy.img", creates a couple of initially
empty FAT tables, zeros the root directory area, and fills the data area with
zeros.
=== Making a Prototype Floppy Image with Linux Commands ===
Here's a pair of Linux commands that accomplish the same thing
as makefloppy.fth:
Step6a $ /sbin/mkdosfs -C -f 2 -F 12 -R 2 -r 224 -s 1 -S 512 floppy.img 1440
Step6b $ dd <bootsec.img of=floppy.img conv=nocreat,notrunc
The arguments to mkdosfs force the filesystem layout to match the layout that
is specified in the BIOS parameter block in bootsec.img.
The advantage of makefloppy.fth is that it reads the filesystem layout parameters
from the BPB in bootsec.img, so its guaranteed to be consistent. If bootsec.fth
were edited to change the layout, the arguments to "mkdosfs" would have to change.
(But there's little need to change that layout, since it's a standard floppy
size.)
The advantage of the Linux command sequence is that it creates a file with
"holes", thus saving disk space for awhile (until something fills in the holes).
=== Booting on a Real PC from a USB Key ===
To build for a real PC:
$ cd openfirmware/cpu/x86/biosload
$ cp config-usbkey.fth config.fth
$ cd build
$ make
That will create a file named "ofw.c32" that can be booted from a USB key that has "syslinux" installed on it. http://www.911cd.net/forums//index.php?showtopic=21902 has some tips on how to install syslinux.
Your syslinux.cfg file needs a line that says:
kernel ofw.c32
(There is also some support in the source code / config.fth for building a version to boot via Grub, but I haven't tested that for some time, so it might be broken.)
39e8b3d7d9efbf1b0c2adc39f0d5ca3771fab55b
403
402
2008-12-29T11:03:26Z
Wmb
5
Added GRUB instructions
wikitext
text/x-wiki
This page tells how to build the x86 version of Open Firmware to boot under a conventional BIOS. These instructions specifically describe a configuration that is good for running on the QEMU and VirtualBox emulators, but very similar instructions can be used to make a version that runs on any PC. In this version, OFW is stored on a floppy disk image. The conventional BIOS boots it as if it were an operating system like DOS or Windows. OFW then "takes over" the machine, ignoring the conventional BIOS that booted it. That BIOS has already done the work of early-startup machine initialization - turning on the memory controller and configuring chipset-dependent registers.
In addition to this BIOS-loaded version, there are two other ways to run OFW under QEMU:
* You can build an OFW image that replaces the QEMU BIOS ROM image, entirely from code in the OFW tree - see [[Building OFW for QEMU]].
* You can build an OFW image that replaces the QEMU BIOS ROM image, using OFW as a "payload" for Coreboot, so Coreboot does the early-startup stuff - see [[OFW as a Coreboot Payload]].
=== Software Requirements ===
* qemu-0.9.1 or VirtualBox
* Open Firmware rev. >= 1053
* GCC and GNU make - most versions work for builing OFW
=== Getting Open Firmware Source ===
$ svn co svn://openfirmware.info/openfirmware
=== Building OFW ===
$ cd cpu/x86/pc/biosload/
$ cp config-virtualbox.fth config.fth
$ cd build
$ make floppyofw.img
The "config-virtualbox.fth" configuration is known to work with QEMU.
Other configurations may work also - but the "qemu-loaded" config
option isn't what you want for this technique, because it's a subcase
of the CoreBoot-payload configuration.
You will use the "floppyofw.img" output file in a later step.
=== Making a bootable Floppy Image ===
$ ../../../Linux/forth fw.dic ../makefloppy.fth
This creates a file that is a bootable floppy image with an empty
FAT12 filesystem. This step only has to be done once.
=== Copying OFW onto the Floppy Image ===
$ mkdir flp
$ sudo mount -t msdos -o loop floppy.img flp
$ sudo cp floppyofw.img flp/ofw.img
$ sudo umount flp
Copy floppy.img to the QEMU or VirtualBox directory.
=== Booting OFW from QEMU ===
$ qemu -L <dir> -boot a -fda floppy.img
"<dir>" is the directory that contains QEMU's BIOS and VGA BIOS files.
=== Booting OFW from VirtualBox ===
The following VirtualBox configuration settings work for me:
OS Type = Other/Unknown
Base Memory = 64 MB
Video Memory = 8 MB
Boot Order = Floppy, Hard Disk
ACPI = Disabled
IO APIC = Disabled
VT-x/AMD-V = Disabled
PAE/NX = Disabled
Floppy Image = floppy.img
Network Adapter 1 = PCnet-PCI II (host interface, <tap name>)
(other settings are mostly irrelevant)
=== Recompiling ===
If you want to make changes and recompile OFW, you need not repeat the
"makefloppy" step; you can just loopback mount the floppy image and
copy the new OFW version to ofw.img .
=== What is on the Floppy Image ===
The floppy image is a bootable floppy with a FAT12 filesystem. Its first two
sectors contain a simple bootloader program that uses BIOS INT 13 callbacks to
read floppy sectors. The program scans the FAT root directory entries to find
the file "ofw.img", then loads that into memory and jumps to it.
When you build floppyofw.img, as a side effect it also builds bootsec.img, which
is that simple bootloader. The source code (Forth-style assembly language) is in
biosload/bootsec.fth .
The "makefloppy.fth" program that creates the image is pretty simple; it copies
bootsec.img to the output file "floppy.img", creates a couple of initially
empty FAT tables, zeros the root directory area, and fills the data area with
zeros.
=== Making a Prototype Floppy Image with Linux Commands ===
Here's a pair of Linux commands that accomplish the same thing
as makefloppy.fth:
Step6a $ /sbin/mkdosfs -C -f 2 -F 12 -R 2 -r 224 -s 1 -S 512 floppy.img 1440
Step6b $ dd <bootsec.img of=floppy.img conv=nocreat,notrunc
The arguments to mkdosfs force the filesystem layout to match the layout that
is specified in the BIOS parameter block in bootsec.img.
The advantage of makefloppy.fth is that it reads the filesystem layout parameters
from the BPB in bootsec.img, so its guaranteed to be consistent. If bootsec.fth
were edited to change the layout, the arguments to "mkdosfs" would have to change.
(But there's little need to change that layout, since it's a standard floppy
size.)
The advantage of the Linux command sequence is that it creates a file with
"holes", thus saving disk space for awhile (until something fills in the holes).
=== Booting on a Real PC from a USB Key ===
To build for a real PC:
$ cd openfirmware/cpu/x86/biosload
$ cp config-usbkey.fth config.fth
$ cd build
$ make
That will create a file named "ofw.c32" that can be booted from a USB key that has "syslinux" installed on it. http://www.911cd.net/forums//index.php?showtopic=21902 has some tips on how to install syslinux.
Your syslinux.cfg file needs a line that says:
kernel ofw.c32
=== Booting on a Real PC via GRUB or Etherboot ===
You can make a version in "Multiboot" format that you can boot with GRUB:
$ cd openfirmware/cpu/x86/biosload
$ cp config-grub.fth config.fth
$ cd build
$ make
The output file is "ofwgrub.elf". Copy that in to /boot on your GRUB-enabled disk and add this to /boot/grub/menu.lst:
title Open Firmware
kernel /boot/ofwgrub.elf
That version can also be booted via Etherboot. Here's an example of how to Etherboot it with QEMU (assuming that the ofwgrub.elf file is in /tmp on the host machine):
qemu -L . -boot n -tftp /tmp -bootp /ofwgrub.elf
44553275af051d7c1237d6f85a863fcb49bc71fc
404
403
2011-03-18T22:00:29Z
Wmb
5
moved [[Building OFW to Run Under BIOS]] to [[Building OFW to Load from BIOS]]: New title is more accurate
wikitext
text/x-wiki
This page tells how to build the x86 version of Open Firmware to boot under a conventional BIOS. These instructions specifically describe a configuration that is good for running on the QEMU and VirtualBox emulators, but very similar instructions can be used to make a version that runs on any PC. In this version, OFW is stored on a floppy disk image. The conventional BIOS boots it as if it were an operating system like DOS or Windows. OFW then "takes over" the machine, ignoring the conventional BIOS that booted it. That BIOS has already done the work of early-startup machine initialization - turning on the memory controller and configuring chipset-dependent registers.
In addition to this BIOS-loaded version, there are two other ways to run OFW under QEMU:
* You can build an OFW image that replaces the QEMU BIOS ROM image, entirely from code in the OFW tree - see [[Building OFW for QEMU]].
* You can build an OFW image that replaces the QEMU BIOS ROM image, using OFW as a "payload" for Coreboot, so Coreboot does the early-startup stuff - see [[OFW as a Coreboot Payload]].
=== Software Requirements ===
* qemu-0.9.1 or VirtualBox
* Open Firmware rev. >= 1053
* GCC and GNU make - most versions work for builing OFW
=== Getting Open Firmware Source ===
$ svn co svn://openfirmware.info/openfirmware
=== Building OFW ===
$ cd cpu/x86/pc/biosload/
$ cp config-virtualbox.fth config.fth
$ cd build
$ make floppyofw.img
The "config-virtualbox.fth" configuration is known to work with QEMU.
Other configurations may work also - but the "qemu-loaded" config
option isn't what you want for this technique, because it's a subcase
of the CoreBoot-payload configuration.
You will use the "floppyofw.img" output file in a later step.
=== Making a bootable Floppy Image ===
$ ../../../Linux/forth fw.dic ../makefloppy.fth
This creates a file that is a bootable floppy image with an empty
FAT12 filesystem. This step only has to be done once.
=== Copying OFW onto the Floppy Image ===
$ mkdir flp
$ sudo mount -t msdos -o loop floppy.img flp
$ sudo cp floppyofw.img flp/ofw.img
$ sudo umount flp
Copy floppy.img to the QEMU or VirtualBox directory.
=== Booting OFW from QEMU ===
$ qemu -L <dir> -boot a -fda floppy.img
"<dir>" is the directory that contains QEMU's BIOS and VGA BIOS files.
=== Booting OFW from VirtualBox ===
The following VirtualBox configuration settings work for me:
OS Type = Other/Unknown
Base Memory = 64 MB
Video Memory = 8 MB
Boot Order = Floppy, Hard Disk
ACPI = Disabled
IO APIC = Disabled
VT-x/AMD-V = Disabled
PAE/NX = Disabled
Floppy Image = floppy.img
Network Adapter 1 = PCnet-PCI II (host interface, <tap name>)
(other settings are mostly irrelevant)
=== Recompiling ===
If you want to make changes and recompile OFW, you need not repeat the
"makefloppy" step; you can just loopback mount the floppy image and
copy the new OFW version to ofw.img .
=== What is on the Floppy Image ===
The floppy image is a bootable floppy with a FAT12 filesystem. Its first two
sectors contain a simple bootloader program that uses BIOS INT 13 callbacks to
read floppy sectors. The program scans the FAT root directory entries to find
the file "ofw.img", then loads that into memory and jumps to it.
When you build floppyofw.img, as a side effect it also builds bootsec.img, which
is that simple bootloader. The source code (Forth-style assembly language) is in
biosload/bootsec.fth .
The "makefloppy.fth" program that creates the image is pretty simple; it copies
bootsec.img to the output file "floppy.img", creates a couple of initially
empty FAT tables, zeros the root directory area, and fills the data area with
zeros.
=== Making a Prototype Floppy Image with Linux Commands ===
Here's a pair of Linux commands that accomplish the same thing
as makefloppy.fth:
Step6a $ /sbin/mkdosfs -C -f 2 -F 12 -R 2 -r 224 -s 1 -S 512 floppy.img 1440
Step6b $ dd <bootsec.img of=floppy.img conv=nocreat,notrunc
The arguments to mkdosfs force the filesystem layout to match the layout that
is specified in the BIOS parameter block in bootsec.img.
The advantage of makefloppy.fth is that it reads the filesystem layout parameters
from the BPB in bootsec.img, so its guaranteed to be consistent. If bootsec.fth
were edited to change the layout, the arguments to "mkdosfs" would have to change.
(But there's little need to change that layout, since it's a standard floppy
size.)
The advantage of the Linux command sequence is that it creates a file with
"holes", thus saving disk space for awhile (until something fills in the holes).
=== Booting on a Real PC from a USB Key ===
To build for a real PC:
$ cd openfirmware/cpu/x86/biosload
$ cp config-usbkey.fth config.fth
$ cd build
$ make
That will create a file named "ofw.c32" that can be booted from a USB key that has "syslinux" installed on it. http://www.911cd.net/forums//index.php?showtopic=21902 has some tips on how to install syslinux.
Your syslinux.cfg file needs a line that says:
kernel ofw.c32
=== Booting on a Real PC via GRUB or Etherboot ===
You can make a version in "Multiboot" format that you can boot with GRUB:
$ cd openfirmware/cpu/x86/biosload
$ cp config-grub.fth config.fth
$ cd build
$ make
The output file is "ofwgrub.elf". Copy that in to /boot on your GRUB-enabled disk and add this to /boot/grub/menu.lst:
title Open Firmware
kernel /boot/ofwgrub.elf
That version can also be booted via Etherboot. Here's an example of how to Etherboot it with QEMU (assuming that the ofwgrub.elf file is in /tmp on the host machine):
qemu -L . -boot n -tftp /tmp -bootp /ofwgrub.elf
44553275af051d7c1237d6f85a863fcb49bc71fc
OpenBIOS
0
16
177
176
2009-02-28T13:02:38Z
BlueSwirl
14
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/131/openbios-devel?old_path=%2F&old=131&format=zip OpenBIOS 1.0alpha2] (2007-04-27)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-utils
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
731936080a95a7037842ea0c4f5e5e8cb8a64736
178
177
2009-02-28T13:21:45Z
BlueSwirl
14
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/131/openbios-devel?old_path=%2F&old=131&format=zip OpenBIOS 1.0alpha2] (2007-04-27)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-utils
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
First, select the build targets:
$ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64
The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler.
Finally the build command:
$ make
or
$ make build-verbose
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
01bed479f69bca0f3cfb92f323ff1ed5717665cc
179
178
2009-02-28T14:09:28Z
BlueSwirl
14
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
We are heading towards the release of OpenBIOS v1.0. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/131/openbios-devel?old_path=%2F&old=131&format=zip OpenBIOS 1.0alpha2] (2007-04-27)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
As of 2009-02-28, OpenBIOS can be used directly as a boot ROM for [http://bellard.org/qemu QEMU] system emulators for PPC, PPC64 and Sparc32. OpenBIOS/Sparc64 also exists but does not work very well yet. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD. There have been attempts to get Solaris boot but so far this has not been successful. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can load a kernel but it hangs or crashes early.
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-utils
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
First, select the build targets:
$ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64
The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler.
Finally the build command:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
cdc210f2a6f5eff46748a99438d9493c098cacea
180
179
2009-03-01T20:11:52Z
BlueSwirl
14
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
OpenBIOS v1.0 has been released. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/463/openbios-devel?old_path=%2F&old=463&format=zip OpenBIOS 1.0] (2009-03-01)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://bellard.org/qemu QEMU] system emulators for PPC, PPC64 and Sparc32. OpenBIOS/Sparc64 also exists but does not work very well yet. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD. There have been attempts to get Solaris boot but so far this has not been successful. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can load a kernel but it hangs or crashes early.
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/openbios-devel
if you want a specific revision: (see the Confirmed working svn revisions page)
$ svn co svn://openbios.org/openbios/openbios-devel -r 4
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/fcode-utils
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
First, select the build targets:
$ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64
The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler.
Finally the build command:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
f63e3c78d9463010d81ae05bcb4b6579f159fee6
181
180
2009-03-08T08:07:23Z
BlueSwirl
14
add /trunk to paths
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
OpenBIOS v1.0 has been released. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/463/openbios-devel?old_path=%2F&old=463&format=zip OpenBIOS 1.0] (2009-03-01)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://bellard.org/qemu QEMU] system emulators for PPC, PPC64 and Sparc32. OpenBIOS/Sparc64 also exists but does not work very well yet. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD. There have been attempts to get Solaris boot but so far this has not been successful. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can load a kernel but it hangs or crashes early.
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 463
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
First, select the build targets:
$ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64
The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler.
Finally the build command:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
cc22dfdbe0ee42070357d60870ac6832d3ab2aae
182
181
2009-03-08T08:28:09Z
BlueSwirl
14
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
OpenBIOS v1.0 has been released. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/463/openbios-devel?old_path=%2F&old=463&format=zip OpenBIOS 1.0] (2009-03-01)
'''NOTE:''' The SVN paths have changed (/trunk added), please update your repositories.
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://bellard.org/qemu QEMU] system emulators for PPC, PPC64 and Sparc32. OpenBIOS/Sparc64 also exists but does not work very well yet. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD. There have been attempts to get Solaris boot but so far this has not been successful. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can load a kernel but it hangs or crashes early.
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 463
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
First, select the build targets:
$ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64
The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler.
Finally the build command:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
a345bb73857ccb8693dab758ca2224dd8da701b1
183
182
2009-03-22T15:47:46Z
BlueSwirl
14
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
OpenBIOS v1.0 has been released. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/463/openbios-devel?old_path=%2F&old=463&format=zip OpenBIOS 1.0] (2009-03-01)
'''NOTE:''' The SVN paths have changed (/trunk added in r470), please update your repositories. The following command should be helpful:
$ cd openbios-devel
$ svn switch svn://openbios.org/openbios/trunk/openbios-devel .
Unfortunately the change also means some inconvenience when bisecting or downloading old versions.
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://bellard.org/qemu QEMU] system emulators for PPC, PPC64 and Sparc32. OpenBIOS/Sparc64 also exists but does not work very well yet. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD. There have been attempts to get Solaris boot but so far this has not been successful. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can load a kernel but it hangs or crashes early.
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 480
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
For versions prior to r470, please remove the /trunk component from the path, for example: [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel?rev=469 r469].
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
First, select the build targets:
$ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64
The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler.
Finally the build command:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
f5538cdbfd0e90e551c6f5e37d523907bc2cd71a
184
183
2010-05-06T16:04:05Z
Programmingkid
15
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
OpenBIOS v1.0 has been released. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/463/openbios-devel?old_path=%2F&old=463&format=zip OpenBIOS 1.0] (2009-03-01)
'''NOTE:''' The SVN paths have changed (/trunk added in r470), please update your repositories. The following command should be helpful:
$ cd openbios-devel
$ svn switch svn://openbios.org/openbios/trunk/openbios-devel .
Unfortunately the change also means some inconvenience when bisecting or downloading old versions.
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://bellard.org/qemu QEMU] system emulators for PPC, PPC64 and Sparc32. OpenBIOS/Sparc64 also exists but does not work very well yet. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD. There have been attempts to get Solaris boot but so far this has not been successful. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can load a kernel but it hangs or crashes early.
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 480
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
For versions prior to r470, please remove the /trunk component from the path, for example: [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel?rev=469 r469].
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
First, make the switch-arch script executable:
$ chmod +x ./config/scripts/switch-arch
Second, select the build targets:
$ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64
The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler.
Finally the build command:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
39103213c899ca76da66a58d95a8f8ab2b401be1
Welcome to OpenBIOS
0
2
45
44
2009-02-28T13:28:40Z
BlueSwirl
14
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM, Sparc and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, [[SLOF|IBM]] and others.
In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://www.denx.de/wiki/U-Boot U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.coreboot.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website] to download the full archive (190MB) or check out our [[OpenBOOT|local mirror]] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
f574fc407af85c50543f8ce7fb74c7750151b3e8
46
45
2009-03-01T20:48:40Z
BlueSwirl
14
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM, Sparc and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, [[SLOF|IBM]] and others.
In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://www.denx.de/wiki/U-Boot U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''OpenBIOS v1.0 released''' (2009-03-01)
OpenBIOS v1.0 has been released. For more information, please visit the [[OpenBIOS|development page]].
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.coreboot.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website] to download the full archive (190MB) or check out our [[OpenBOOT|local mirror]] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
9e9de471557d817998d73c42b9a4ae9ff7685214
FCODE suite
0
17
269
268
2009-03-12T15:42:37Z
WikiSysop
1
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils?rev=197 Sources] online. Available as a ZIP-File: [http://tracker.coreboot.org/trac/openbios/changeset/197/fcode-utils?old_path=%2F&old=197&format=zip FCode-utils 1.0.2]
See the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/ChangeLog?rev=197 ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a ZIP-File: [http://tracker.coreboot.org/trac/openbios/changeset/236/fcode-utils/documentation?old_path=%2F&old=&format=zip Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate [http://tracker.coreboot.org/trac/openbios/changeset/236/fcode-utils/localvalues?old_path=%2F&format=zip ZIP-File].
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/TODO collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testsuite accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
Run the unit-test cases with
$ make tests
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testsuite/AutoExec AutoExec] automates the execution, and
* [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testsuite/AutoCompare AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testlogs/testlogs-x86-cygwin X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testlogs/testlogs-ppc-linux PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testlogs/testlogs-ppc-aix PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
== Kudos and Thanks ==
<div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:David@paktor.biz David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!'''
</div>
__NOEDITSECTION__
041ff4db435d18faf648f90e83fce0db83951402
270
269
2009-03-12T23:54:06Z
WikiSysop
1
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils?rev=197 Sources] online. Available as a ZIP-File: [http://tracker.coreboot.org/trac/openbios/changeset/197/fcode-utils?old_path=%2F&old=197&format=zip FCode-utils 1.0.2]
See the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/ChangeLog?rev=197 ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
Available as a ZIP-File: [http://tracker.coreboot.org/trac/openbios/changeset/236/fcode-utils/documentation?old_path=%2F&old=&format=zip Documentation Archive]
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/LocalValuesSupport.fth basic functionality]
* the second adds a [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite and as a seperate [http://tracker.coreboot.org/trac/openbios/changeset/236/fcode-utils/localvalues?old_path=%2F&format=zip ZIP-File].
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/TODO collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testsuite accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
Run the unit-test cases with
$ make tests
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testsuite/AutoExec AutoExec] automates the execution, and
* [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testsuite/AutoCompare AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testlogs/testlogs-x86-cygwin X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testlogs/testlogs-ppc-linux PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testlogs/testlogs-ppc-aix PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
== Kudos and Thanks ==
<div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:David@paktor.biz David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!'''
</div>
__NOEDITSECTION__
ca8b472b56c2441639e579cf9bde7dba3f60b4d2
FlashRom
0
25
337
336
2010-02-09T14:17:47Z
Stepan
2
/* Flash Updates with Linux */
wikitext
text/x-wiki
{{stub}}
__NOTOC__
= Flash Updates with Linux =
Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update.
Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://www.coreboot.org coreboot project] and evolved to work with non-SIS chipsets.
[[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel.
For more information about flashrom see http://www.flashrom.org/
61b5437f2a1fa3679fb51ebbfa63b4c008b421de
Adding words to openbios
0
44
405
2010-04-30T17:47:49Z
Programmingkid
15
Created page with 'How to add “words” to the OpenBIOS Dictionary using the C language. In this example, we are going to implement a forth “word” in C. There are two arrays that need to be…'
wikitext
text/x-wiki
How to add “words” to the OpenBIOS Dictionary using the C language.
In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/primitives.c. The two arrays are used to map a C function to a forth word.
The array in bootstrap.c is where the name of the forth word would go. The array in primitives.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly.
Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this:
static void dog(void)
{
printk(“bark bark!”);
}
Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully.
Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look:
/* the word names are used to generate the prim words in the
* dictionary. This is done by the C written interpreter.
*/
static const char *wordnames[] = {
"(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)",
"(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop",
"2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>",
"r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*",
"mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a",
"and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@",
"w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<",
"sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute",
"here", "here!", "dobranch", "do?branch", "unaligned-w@",
"unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@",
"iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug",
"$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here
};
Next we add the C function name to the end of the function list. Open the file primitives.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary.
sysdebug, /* sys-debug */
do_include, /* $include */
do_encode_file, /* $encode-file */
do_debug_xt, /* (debug */
do_debug_off, /* (debug-off) */
dog /* dog */ //<-------- insert here
};
Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder:
cd openbios-devel
Then change the build script to be able to execute:
chmod 777 ./config/scripts/switch-arch
Set the architure you wish to build openbios for (x86 is used in this example):
./config/scripts/switch-arch x86
Then start building OpenBIOS:
make
Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS.
We run the program like this:
./obj-x86/openbios-unix ./obj-x86/openbios-unix.dict
We should then be greeted by the OpenBIOS Banner:
Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06
Type 'help' for detailed information
[unix] Booting default not supported.
0 >
Type dog at the prompt and see what it says:
0 > dog
bark bark! ok
0 >
Congratulations, you have just taken your first step to improving OpenBIOS.
1bc8f14af7c088b7014617115264097d12296d45
406
405
2010-05-05T20:39:16Z
Programmingkid
15
wikitext
text/x-wiki
How to add “words” to the OpenBIOS Dictionary using the C language.
In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/primitives.c. The two arrays are used to map a C function to a forth word.
The array in bootstrap.c is where the name of the forth word would go. The array in primitives.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly.
Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this:
static void dog(void)
{
printk(“bark bark!”);
}
Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully.
Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look:
/* the word names are used to generate the prim words in the
dictionary. This is done by the C written interpreter.
*/
static const char *wordnames[] = {
"(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)",
"(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop",
"2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>",
"r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*",
"mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a",
"and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@",
"w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<",
"sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute",
"here", "here!", "dobranch", "do?branch", "unaligned-w@",
"unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@",
"iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug",
"$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here
};
Next we add the C function name to the end of the function list. Open the file primitives.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary.
sysdebug, /* sys-debug */
do_include, /* $include */
do_encode_file, /* $encode-file */
do_debug_xt, /* (debug */
do_debug_off, /* (debug-off) */
dog /* dog */ //<-------- insert here
};
Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder:
cd openbios-devel
Then change the build script to be able to execute:
chmod 777 ./config/scripts/switch-arch
Set the architure you wish to build openbios for (x86 is used in this example):
./config/scripts/switch-arch x86
Then start building OpenBIOS:
make
Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS.
We run the program like this:
./obj-x86/openbios-unix ./obj-x86/openbios-unix.dict
We should then be greeted by the OpenBIOS Banner:
Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06
Type 'help' for detailed information
[unix] Booting default not supported.
0 >
Type dog at the prompt and see what it says:
0 > dog
bark bark! ok
0 >
Congratulations, you have just taken your first step to improving OpenBIOS.
086218b102ec5375719680809f77f960153a2fde
Building OFW for ARM
0
45
407
2010-08-11T06:28:10Z
Wmb
5
Compiling the ARM version
wikitext
text/x-wiki
This page tells how to build Open Firmware for an ARM target system.
=== Host System Requirements ===
During the Open Firmware build process, the Forth system inside OFW is executed several times to extend itself. Those steps must run on the same CPU instruction set (in this case ARM) as the final target. So you must build OFW either on an ARM computer or by using an ARM instruction set emulator running on some other computer. [[http://wiki.qemu.org/ QEMU]] works well for this purpose.
==== Compiler Setup for Native ARM Host ====
To compile on an ARM host, you need Linux on that host, along with the GNU toolchain (GCC and GNU make) plus the Subversion version control system.
==== Compiler Setup for x86 Host ====
To compile on an x86 host, you need everything listed for the native host (Linux, GNU toolchain, and Subversion), plus QEMU.
To install QEMU:
* Debian: sudo apt-get install qemu
* Ubuntu: sudo apt-get install qemu
* Fedora: sudo yum install qemu-user
For Fedora, you might also need to disable SELinux security during OFW compilation:
sudo /usr/sbin/setenforce 0
=== Building Open Firmware ===
Get the Open Firmware source:
svn co svn://openfirmware.info/openfirmware
Build OFW:
cd openfirmware/cpu/arm/mmp2/build
make
The last line of the compilation output should say something like:
--- Saving as mmp2.rom
That tells you the name of the output file.
There are some other build directories like "cpu/arm/versatilepb/build". At the time of this writing, they have not been fixed up to "do the right thing" with the emulated build environment. The Makefile in cpu/arm/mmp2/build is the current "gold standard" for the build automation.
4eb7e9129ead9047d75a4499d75cd0bbdc90064e
408
407
2010-08-11T08:52:36Z
Wmb
5
Output file name is ofw.rom, not mmp2.rom
wikitext
text/x-wiki
This page tells how to build Open Firmware for an ARM target system.
=== Host System Requirements ===
During the Open Firmware build process, the Forth system inside OFW is executed several times to extend itself. Those steps must run on the same CPU instruction set (in this case ARM) as the final target. So you must build OFW either on an ARM computer or by using an ARM instruction set emulator running on some other computer. [[http://wiki.qemu.org/ QEMU]] works well for this purpose.
==== Compiler Setup for Native ARM Host ====
To compile on an ARM host, you need Linux on that host, along with the GNU toolchain (GCC and GNU make) plus the Subversion version control system.
==== Compiler Setup for x86 Host ====
To compile on an x86 host, you need everything listed for the native host (Linux, GNU toolchain, and Subversion), plus QEMU.
To install QEMU:
* Debian: sudo apt-get install qemu
* Ubuntu: sudo apt-get install qemu
* Fedora: sudo yum install qemu-user
For Fedora, you might also need to disable SELinux security during OFW compilation:
sudo /usr/sbin/setenforce 0
=== Building Open Firmware ===
Get the Open Firmware source:
svn co svn://openfirmware.info/openfirmware
Build OFW:
cd openfirmware/cpu/arm/mmp2/build
make
The last line of the compilation output should say something like:
--- Saving as ofw.rom
That tells you the name of the output file.
There are some other build directories like "cpu/arm/versatilepb/build". At the time of this writing, they have not been fixed up to "do the right thing" with the emulated build environment. The Makefile in cpu/arm/mmp2/build is the current "gold standard" for the build automation.
7e86901ac119d1778f331aff8c01bbfa0a68d427
409
408
2010-08-11T17:45:04Z
Wmb
5
More information about finding qemu-arm
wikitext
text/x-wiki
This page tells how to build Open Firmware for an ARM target system.
=== Host System Requirements ===
During the Open Firmware build process, the Forth system inside OFW is executed several times to extend itself. Those steps must run on the same CPU instruction set (in this case ARM) as the final target. So you must build OFW either on an ARM computer or by using an ARM instruction set emulator running on some other computer. [[http://wiki.qemu.org/ QEMU]] works well for this purpose.
==== Compiler Setup for Native ARM Host ====
To compile on an ARM host, you need Linux on that host, along with the GNU toolchain (GCC and GNU make) plus the Subversion version control system.
==== Compiler Setup for x86 Host ====
To compile on an x86 host, you need everything listed for the native host (Linux, GNU toolchain, and Subversion), plus QEMU.
To install QEMU:
* Debian: sudo apt-get install qemu
* Ubuntu 8.04 (Hardy): sudo apt-get install qemu
* Ubuntu 9.10 (Karmic): sudo apt-get install qemu qemu-kvm-extras
* Fedora: sudo yum install qemu-user
In general, the file that you need is "qemu-arm". You can use commands like (Fedora) "yum whatprovides qemu-arm" or (Debian/Ubuntu) "apt-file search qemu-arm" to work out which top-level package to install.
For Fedora, you might also need to temporarily disable SELinux security before OFW compilation:
sudo /usr/sbin/setenforce 0
=== Building Open Firmware ===
Get the Open Firmware source:
svn co svn://openfirmware.info/openfirmware
Build OFW:
cd openfirmware/cpu/arm/mmp2/build
make
The last line of the compilation output should say something like:
--- Saving as ofw.rom
That tells you the name of the output file.
There are some other build directories like "cpu/arm/versatilepb/build". At the time of this writing, they have not been fixed up to "do the right thing" with the emulated build environment. The Makefile in cpu/arm/mmp2/build is the current "gold standard" for the build automation.
fba6b4a8b4120ae77ff5f7442879418cd9e99b8c
410
409
2010-08-11T18:03:06Z
Wmb
5
Clarified which toolchain
wikitext
text/x-wiki
This page tells how to build Open Firmware for an ARM target system.
=== Host System Requirements ===
During the Open Firmware build process, the Forth system inside OFW is executed several times to extend itself. Those steps must run on the same CPU instruction set (in this case ARM) as the final target. So you must build OFW either on an ARM computer or by using an ARM instruction set emulator running on some other computer. [[http://wiki.qemu.org/ QEMU]] works well for this purpose.
==== Compiler Setup for Native ARM Host ====
To compile on an ARM host, you need Linux on that host, along with the GNU toolchain (GCC), GNU make, and the Subversion version control system.
==== Compiler Setup for x86 Host ====
To compile on an x86 host, you need everything listed for the native host (Linux, GNU toolchain, GNU make, and Subversion), plus QEMU.
Note that the GNU toolchain that you need is the native x86 one, not an ARM cross-toolchain. OFW uses its own built-in ARM assembler. The native x86 toolchain is needed for the one-time step of compiling a small interface program that lets the OFW builder operate under Linux. It would be possible to eliminate that need by distributing a precompiled binary of that interface program, but in practice, most developers already have the native x86 toolchain already installed, so requiring it isn't a problem (as opposed to cross-toolchains, which can be a serious hassle to set up correctly).
To install QEMU:
* Debian: sudo apt-get install qemu
* Ubuntu 8.04 (Hardy): sudo apt-get install qemu
* Ubuntu 9.10 (Karmic): sudo apt-get install qemu qemu-kvm-extras
* Fedora: sudo yum install qemu-user
In general, the file that you need is "qemu-arm". You can use commands like (Fedora) "yum whatprovides qemu-arm" or (Debian/Ubuntu) "apt-file search qemu-arm" to work out which top-level package to install.
For Fedora, you might also need to temporarily disable SELinux security before OFW compilation:
sudo /usr/sbin/setenforce 0
=== Building Open Firmware ===
Get the Open Firmware source:
svn co svn://openfirmware.info/openfirmware
Build OFW:
cd openfirmware/cpu/arm/mmp2/build
make
The last line of the compilation output should say something like:
--- Saving as ofw.rom
That tells you the name of the output file.
There are some other build directories like "cpu/arm/versatilepb/build". At the time of this writing, they have not been fixed up to "do the right thing" with the emulated build environment. The Makefile in cpu/arm/mmp2/build is the current "gold standard" for the build automation.
6fe7693c8c4b15d2f11ab989d68fe03962d53c28
411
410
2010-08-11T18:45:42Z
Wmb
5
Info about other build versions
wikitext
text/x-wiki
This page tells how to build Open Firmware for an ARM target system.
=== Host System Requirements ===
During the Open Firmware build process, the Forth system inside OFW is executed several times to extend itself. Those steps must run on the same CPU instruction set (in this case ARM) as the final target. So you must build OFW either on an ARM computer or by using an ARM instruction set emulator running on some other computer. [[http://wiki.qemu.org/ QEMU]] works well for this purpose.
==== Compiler Setup for Native ARM Host ====
To compile on an ARM host, you need Linux on that host, along with the GNU toolchain (GCC), GNU make, and the Subversion version control system.
==== Compiler Setup for x86 Host ====
To compile on an x86 host, you need everything listed for the native host (Linux, GNU toolchain, GNU make, and Subversion), plus QEMU.
Note that the GNU toolchain that you need is the native x86 one, not an ARM cross-toolchain. OFW uses its own built-in ARM assembler. The native x86 toolchain is needed for the one-time step of compiling a small interface program that lets the OFW builder operate under Linux. It would be possible to eliminate that need by distributing a precompiled binary of that interface program, but in practice, most developers already have the native x86 toolchain already installed, so requiring it isn't a problem (as opposed to cross-toolchains, which can be a serious hassle to set up correctly).
To install QEMU:
* Debian: sudo apt-get install qemu
* Ubuntu 8.04 (Hardy): sudo apt-get install qemu
* Ubuntu 9.10 (Karmic): sudo apt-get install qemu qemu-kvm-extras
* Fedora: sudo yum install qemu-user
In general, the file that you need is "qemu-arm". You can use commands like (Fedora) "yum whatprovides qemu-arm" or (Debian/Ubuntu) "apt-file search qemu-arm" to work out which top-level package to install.
For Fedora, you might also need to temporarily disable SELinux security before OFW compilation:
sudo /usr/sbin/setenforce 0
=== Building Open Firmware ===
Get the Open Firmware source:
svn co svn://openfirmware.info/openfirmware
Build OFW:
cd openfirmware/cpu/arm/mmp2/build
make
The last line of the compilation output should say something like:
--- Saving as ofw.rom
That tells you the name of the output file.
There are some other build directories like "cpu/arm/versatilepb/build". They work the same way - just type "make" in the directory. At present, those other versions are fairly rudimentary, containing core OFW plus a serial driver for interaction, but lacking drivers for most of the other hardware on those systems. Essentially, they are "quick ports to get an ok prompt". The MMP2 version is quite a bit more complete, on its way to being a fully-fledged OFW system. The MMP2 is Marvell's hardware development platform for their PXA688 chip, which is slated for use in the OLPC XO-1.75 system. We are using the MMP2 to get a jump-start on XO-1.75 development.
dbc4f63860e4bf9d8b384e057faceaffe4d750bf
How Local Variables in Forth Work --- Using Apple’s Open Firmware Implementation
0
46
412
2010-09-25T19:32:26Z
Programmingkid
15
Created page with "<P><FONT SIZE=5><B>How Local Variables in Forth Work --- Using Apple’s Open Firmware Implementation<BR> </B></FONT><BR> <FONT SIZE=3><FONT COLOR="#AA0000"><B><U>Contents:</..."
wikitext
text/x-wiki
<P><FONT SIZE=5><B>How Local Variables in Forth Work --- Using Apple’s Open Firmware Implementation<BR>
</B></FONT><BR>
<FONT SIZE=3><FONT COLOR="#AA0000"><B><U>Contents:</U></B></FONT><BR>
How to try out these code examples<BR>
Declaring local variables<BR>
Setting local variables<BR>
Obtaining local variables’ values<BR>
Booting Mac OS X in OpenBIOS<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>How to try out these code examples</U></B></FONT><BR>
<BR>
The following example code may be entered and ran in Apple’s Open Firmware. In order to access Open Firmware, just hold down Command-Option-O-F while you boot your pre-Intel Mac. PowerPC iMacs and PowerBooks, iBooks, PowerMac G3’s, G4’s, and G5’s all have Open Firmware built-in. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Declaring local variables:</U></B></FONT><BR>
<BR>
Place curly braces next to the word name. The curly braces must be on the same line as the word’s name. The semicolon is optional. The semicolon lets the system know that the variables following it will not be initializing their values to the values that would have been popped from the stack. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 1</B></FONT><BR>
<BR>
: myword { ; cat dog }<BR>
;<BR>
<BR>
Omitting the semicolon will initialize the local variable’s values to values popped from the stack. Make sure the stack has enough values in it before proceeding. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Setting local variables:</U></B></FONT><FONT COLOR="#DD0000"><BR>
</FONT><BR>
The word “->” (hyphen greater-than) is used to set the values of local variables. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 2</B></FONT><BR>
<BR>
: myword { ; cat dog }<BR>
4 -> cat<BR>
5 -> dog<BR>
;<BR>
<BR>
In the above example, the numbers are each pushed into the stack first. Then the -> word pops a value out of the stack and sets each variable’s value to a popped value. If a value is already in the stack, the following code would work as well: -> cat (The 4 has been omitted).<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Obtaining a local variable’s value</U></B></FONT><BR>
<BR>
To push a local variable’s value onto the stack, just enter a local variable’s name in a word. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 3</B></FONT><BR>
<BR>
: myword { ; cat dog }<BR>
<BR>
4 -> cat<BR>
5 -> dog<BR>
<BR>
cat \ cat’s value pushed onto stack ( - cat)<BR>
dog \ dog’s value pushed onto stack (cat - cat dog )<BR>
+<BR>
<BR>
cr<BR>
.” Total animals = “ . <BR>
cr<BR>
;<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Booting Mac OS X using OpenBIOS. </U></B></FONT><BR>
<BR>
The reason why OpenBIOS can’t boot Mac OS X is because of missing local variable support. Maybe you can help fix this problem. <BR>
<BR>
</FONT></P>
69365e2a751e70271c71b58ea4d400e647778a74
413
412
2010-09-25T19:39:31Z
Programmingkid
15
wikitext
text/x-wiki
<BR>
<FONT SIZE=3><FONT COLOR="#AA0000"><B><U>Contents:</U></B></FONT><BR>
How to try out these code examples<BR>
Declaring local variables<BR>
Setting local variables<BR>
Obtaining local variables’ values<BR>
Booting Mac OS X in OpenBIOS<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>How to try out these code examples</U></B></FONT><BR>
<BR>
The following example code may be entered and ran in Apple’s Open Firmware. In order to access Open Firmware, just hold down Command-Option-O-F while you boot your pre-Intel Mac. PowerPC iMacs and PowerBooks, iBooks, PowerMac G3’s, G4’s, and G5’s all have Open Firmware built-in. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Declaring local variables:</U></B></FONT><BR>
<BR>
Place curly braces next to the word name. The curly braces must be on the same line as the word’s name. The semicolon is optional. The semicolon lets the system know that the variables following it will not be initializing their values to the values that would have been popped from the stack. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 1</B></FONT><BR>
<BR>
: myword { ; cat dog }<BR>
;<BR>
<BR>
Omitting the semicolon will initialize the local variable’s values to values popped from the stack. Make sure the stack has enough values in it before proceeding. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Setting local variables:</U></B></FONT><FONT COLOR="#DD0000"><BR>
</FONT><BR>
The word “->” (hyphen greater-than) is used to set the values of local variables. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 2</B></FONT><BR>
<BR>
: myword { ; cat dog }<BR>
4 -> cat<BR>
5 -> dog<BR>
;<BR>
<BR>
In the above example, the numbers are each pushed into the stack first. Then the -> word pops a value out of the stack and sets each variable’s value to a popped value. If a value is already in the stack, the following code would work as well: -> cat (The 4 has been omitted).<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Obtaining a local variable’s value</U></B></FONT><BR>
<BR>
To push a local variable’s value onto the stack, just enter a local variable’s name in a word. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 3</B></FONT><BR>
<BR>
: myword { ; cat dog }<BR>
<BR>
4 -> cat<BR>
5 -> dog<BR>
<BR>
cat \ cat’s value pushed onto stack ( - cat)<BR>
dog \ dog’s value pushed onto stack (cat - cat dog )<BR>
+<BR>
<BR>
cr<BR>
.” Total animals = “ . <BR>
cr<BR>
;<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Booting Mac OS X using OpenBIOS. </U></B></FONT><BR>
<BR>
The reason why OpenBIOS can’t boot Mac OS X is because of missing local variable support. Maybe you can help fix this problem. <BR>
<BR>
</FONT></P>
f38735ac3615e2a6345baace51fe7b3477dea754
414
413
2010-09-25T19:52:06Z
Programmingkid
15
wikitext
text/x-wiki
<BR>
<FONT SIZE=3><FONT COLOR="#AA0000"><B><U>Contents:</U></B></FONT><BR>
How to try out these code examples<BR>
Declaring local variables<BR>
Setting local variables<BR>
Obtaining local variables’ values<BR>
Booting Mac OS X in OpenBIOS<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>How to try out these code examples</U></B></FONT><BR>
<BR>
The following example code may be entered and ran in Apple’s Open Firmware. In order to access Open Firmware, just hold down Command-Option-O-F while you boot your pre-Intel Mac. PowerPC iMacs and PowerBooks, iBooks, PowerMac G3’s, G4’s, and G5’s all have Open Firmware built-in. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Declaring local variables:</U></B></FONT><BR>
<BR>
Place curly braces next to the word name. The curly braces must be on the same line as the word’s name. The semicolon is optional. The semicolon lets the system know that the variables following it will not be initializing their values to the values that would have been popped from the stack. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 1</B></FONT><BR>
<BR>
<pre>
: myword { ; cat dog }
;
</pre>
<BR>
<BR>
<BR>
Omitting the semicolon will initialize the local variable’s values to values popped from the stack. Make sure the stack has enough values in it before proceeding. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Setting local variables:</U></B></FONT><FONT COLOR="#DD0000"><BR>
</FONT><BR>
The word “->” (hyphen greater-than) is used to set the values of local variables. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 2</B></FONT><BR>
<BR>
<pre>
: myword { ; cat dog }
4 -> cat
5 -> dog
;
</pre>
<BR>
<BR>
In the above example, the numbers are each pushed into the stack first. Then the -> word pops a value out of the stack and sets each variable’s value to a popped value. If a value is already in the stack, the following code would work as well: -> cat (The 4 has been omitted).<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Obtaining a local variable’s value</U></B></FONT><BR>
<BR>
To push a local variable’s value onto the stack, just enter a local variable’s name in a word. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 3</B></FONT><BR>
<BR>
<pre>
: myword { ; cat dog }
4 -> cat
5 -> dog
cat \ cat's value pushed onto stack ( - cat)
dog \ dog's value pushed onto stack (cat - cat dog )
+
cr
." Total animals = " .
cr
;
</pre>
<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Booting Mac OS X using OpenBIOS. </U></B></FONT><BR>
<BR>
The reason why OpenBIOS can’t boot Mac OS X is because of missing local variable support. Maybe you can help fix this problem. <BR>
<BR>
</FONT>
6d70688ff605138b402a1d44681cc6e02616bde8
415
414
2010-09-25T19:55:41Z
Programmingkid
15
wikitext
text/x-wiki
<BR>
<FONT SIZE=3><FONT COLOR="#AA0000"><B><U>Contents:</U></B></FONT><BR>
How to try out these code examples<BR>
Declaring local variables<BR>
Setting local variables<BR>
Obtaining local variables’ values<BR>
Booting Mac OS X in OpenBIOS<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>How to try out these code examples</U></B></FONT><BR>
<BR>
The following example code may be entered and ran in Apple’s Open Firmware. In order to access Open Firmware, just hold down Command-Option-O-F while you boot your pre-Intel Mac. PowerPC iMacs and PowerBooks, iBooks, PowerMac G3’s, G4’s, and G5’s all have Open Firmware built-in. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Declaring local variables:</U></B></FONT><BR>
<BR>
Place curly braces next to the word name. The curly braces must be on the same line as the word’s name. The semicolon is optional. The semicolon lets the system know that the variables following it will not be initializing their values to the values that would have been popped from the stack. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 1</B></FONT><BR>
<BR>
<pre>
: myword { ; cat dog }
;
</pre>
<BR>
Omitting the semicolon will initialize the local variable’s values to values popped from the stack. Make sure the stack has enough values in it before proceeding. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Setting local variables:</U></B></FONT><FONT COLOR="#DD0000"><BR>
</FONT><BR>
The word “->” (hyphen greater-than) is used to set the values of local variables. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 2</B></FONT><BR>
<BR>
<pre>
: myword { ; cat dog }
4 -> cat
5 -> dog
;
</pre>
<BR>
In the above example, the numbers are each pushed into the stack first. Then the -> word pops a value out of the stack and sets each variable’s value to a popped value. If a value is already in the stack, the following code would work as well: -> cat (The 4 has been omitted).<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Obtaining a local variable’s value</U></B></FONT><BR>
<BR>
To push a local variable’s value onto the stack, just enter a local variable’s name in a word. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 3</B></FONT><BR>
<BR>
<pre>
: myword { ; cat dog }
4 -> cat
5 -> dog
cat \ cat's value pushed onto stack ( - cat)
dog \ dog's value pushed onto stack (cat - cat dog )
+
cr
." Total animals = " .
cr
;
</pre>
<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Booting Mac OS X using OpenBIOS. </U></B></FONT><BR>
<BR>
The reason why OpenBIOS can’t boot Mac OS X is because of missing local variable support. Maybe you can help fix this problem. <BR>
<BR>
</FONT>
071a138222467c1229ca1a26de35558efcee51cc
Building OFW to Run Under BIOS
0
47
418
2011-03-18T22:00:29Z
Wmb
5
moved [[Building OFW to Run Under BIOS]] to [[Building OFW to Load from BIOS]]: New title is more accurate
wikitext
text/x-wiki
#REDIRECT [[Building OFW to Load from BIOS]]
7ffd9bb8c732258c3cb891ef9747af03eb64873b
Building OFW for QEMU
0
41
398
397
2011-03-18T22:05:47Z
Wmb
5
page rename
wikitext
text/x-wiki
This page tells how to build the x86 version of Open Firmware to run under the QEMU emulator. In this version, OFW replaces QEMU's normal "bios.bin" file, so QEMU boots directly into OFW, without a conventional BIOS. This version supports most of QEMU's I/O capabilities, illustrating some of the things that OFW can do. See the [[#QEMU Options / Things to Try]] section.
The OFW tree contains a version of the platform-specific "early startup" code that is suitable for initializing QEMU's virtual hardware. The early-startup code for QEMU is as simple as such code can possibly be, because the QEMU core system "hardware" requires no initialization. On real hardware, you must turn on PLLs, configure bus bridges and superIO chips, detect DRAM characteristics and configure memory controllers, and do other complex chipset-dependent things in the early stages of startup. QEMU omits all that "magic" stuff that is outside of generic x86 programming models, so the only system-specific early startup code for QEMU is a simple memory sizing loop.
In addition to this "direct" version, there are two other ways to run OFW under QEMU:
* You can build OFW as "payload" for Coreboot, so Core boot does the early-startup stuff - see [[OFW as a Coreboot Payload]].
* You can boot OFW from a conventional BIOS - see [[Building OFW to Load from BIOS]]
=== Software Requirements ===
* qemu-0.9.1
* Open Firmware rev. >= 1051
* GCC and GNU make - OFW builds with most versions
=== Getting QEMU ===
Get QEMU >= 0.9.1 from http://bellard.org/qemu/download.html
=== Building Open Firmware ===
Get the Open Firmware source:
svn co svn://openfirmware.info/openfirmware
Build OFW:
cd openfirmware/cpu/x86/pc/emu/build
make
After make is finished (it shouldn't take long) there should be a file "emuofw.rom" in the build directory. Copy this to your qemu directory.
=== Run Your ROM Image ===
qemu -L . -bios emuofw.rom -hda fat:.
That is the basic invocation; you should get a console window with OFW running in it. OFW is using the emulated Cirrus graphics display in linear framebuffer mode, not in VGA mode.
=== QEMU Options / Things to Try ===
QEMU has lots of options that let you do all sorts of fun things. The following sections illustrate a few of OFW's I/O capabilities.
==== Memory Size ====
If you look in OFW's startup banner, you should see "128 MiB memory installed". That is QEMU's default memory size. You can change that by adding "-m NNN" to the qemu command line, for example:
qemu -L . -bios emuofw.rom -hda fat:. -m 32
OFW as configured will work with power-of-two size between 32 and 2048 MiB (although my QEMU installation only works up to 1024 MB). Those limits aren't inherent inheret OFW, but rather artifacts of the way this particular "port" is configured.
==== Hard Disk Images ====
The command line argument "-hda fat:." as shown above makes the current directory on the host system appear to OFW as an IDE hard disk with a read-only FAT filesystem. You can inspect it with:
ok .partitions c
ok dir c:\
The device name "c" is a devalias. You can see the actual device name with:
ok devalias c
ok devalias
Instead of that "virtual FAT filesystem", you can make use Linux tools to make a filesystem image. In this example, we'll create a 10 MByte image with a single partition and an ext2 filesystem:
$ dd if=/dev/zero of=filesystem.img bs=1M count=10
$ /sbin/mke2fs -F filesystem.img
$ dd if=filesystem.img of=fs.img bs=512 seek=1
$ rm filesystem.img
$ /sbin/sfdisk -L -uS -C 10 -H 64 -S 32 fs.img <<EOF
,,L,*
;
;
;
EOF
$ mkdir mnt
$ sudo mount -o loop,offset=512 fs.img mnt
$ # Now copy some files to "mnt"
$ sudo umount mnt
$ qemu -L . -bios emuofw.rom -hda fs.img
In the QEMU OFW console window:
ok dir c:\
In the recipe above, the total size (10 MiB) appears on the first "dd" line (count=10) and on the "sfdisk" line (-C 10). The sfdisk values for heads (-H 64) and sectors (-S 32) are set so that the cylinder size is 1MiB (64*32*512), making it easy to set the overall size with the cylinders (-C) argument. It is more common to use the maximum values -H 255 -S 63 in order to maximize the possible overall size, but that results in a cylinder size of just under 8M, which isn't quite as easy to work with for this example. The recipe uses two "dd" lines instead of making the image file in one step because the "mke2fs" command doesn't give you the option of skipping the first sector where the partition map has to be located.
==== Serial Console ====
You can tell QEMU to emulate a serial port by adding "-serial NAME" to the command line, as with:
$ qemu -L . -bios emuofw.rom -hda fat:. -serial `tty`
Then you can tell OFW to use the serial console with:
ok com1 io
QEMU has lots of options for directing the emulated serial port to various places, including real serial ports on the host system and network connections to other machines. Read the [http://bellard.org/qemu/qemu-doc.html QEMU documentation] (-serial option) for more information.
You can configure OFW to use the serial port by default, instead of the graphics screen and emulated PC keyboard. To do so, uncomment the line "create serial-console" in openfirmware/cpu/x86/emu/config.fth and re-execute the "make" command. Serial consoles are convenient because it's usually easy to cut-and-paste Forth code into the window that is acting as the "terminal emulator" for the serial console; you can't paste into QEMU's graphical console.
==== Networking ====
OFW has an extensive network stack, supporting many protocols including TFTP, NFS, HTTP (client and server), and Telnet (client and server). Here's an example qemu command line with networking support enabled:
$ qemu -L . -bios emuofw.rom -hda fat:. -net nic,model=pcnet -net tap
Consult the [http://bellard.org/qemu/qemu-doc.html QEMU documentation] (the "-net" option) to learn how to configure the "tap" interface to connect through to the real network.
Here are some OFW networking commands that you might want to try:
ok watch-net
ok debug-net
ok ping yahoo.com
ok undebug-net
ok ping firmworks.com
ok more http:\\firmworks.com\hello.fth
ok fload http:\\firmworks.com\hello.fth
ok telnetd
telnet://10.20.0.107
Now start a telnet client on some machine, connecting to the IP address shown.
Quitting the telnet client restores the OFW prompt to the QEMU console.
ok telnet 10.20.0.5
Instead of "10.20.0.5", use the hostname or IP address of a telnet server. To exit, type Ctrl-] .
ok httpd
http://10.20.0.107
Browse to the URL shown. Type any key on the QEMU console to exit the HTTP server. In addition to static pages, the HTTP server can do server-side scripting with Forth, and of course you do client-side scripting by serving up Javascript or Java pages. This facility has been used for an interactive embedded system with a Web interface programmed entirely in Open Firmware - a multi-headed high-speed camera for real-time analysis of golf clubs and golf swings.
OFW also supports IPV6 networking, but it's not compiled into this version.
You can, of course, boot operating systems over the network, using TFTP, NFS, or HTTP.
==== Graphics ====
OFW uses the display in linear framebuffer mode, so it can display 2D graphics. To see a simple demo:
ok fload http:\\firmworks.com\testrect.fth
To clear the screen afterwards:
ok page
OFW has a graphical menu system that is not enabled in this configuration. You can navigate it with either the mouse or the keyboard. OFW can display .BMP files.
==== USB ====
To make QEMU emulate a USB mass storage device, do this:
$ qemu -L . -bios emuofw.rom -hda fat:. -usbdevice disk:fat:.
Then, in OFW:
ok probe-usb
ok dir u:\
"p2" is an alias for "probe-usb" for us lazy people. Since OFW tries not to do stuff "behind your back", if you plug in a new USB device, you must tell OFW to rescan the USB bus. In this case, it will have already scanned the device (it does that automatically at startup), but rescanning is a convenient way to get OFW to show you what is there. You could instead say:
ok show-devs usb
but "p2" is easier to type.
In the qemu command, you could attach a writable disk image with, for example:
$ qemu -L . -bios emuofw.rom -hda fat:. -usbdevice disk:fs.img
assuming that you have created a suitable fs.img file as per the instructions above. You can't use the same writable image for both -hda and -usbdevice, but it's okay to use the same read-only image (as with the fat:<directory> syntax) for both.
OFW has reasonably good support for a wide selection of USB mass storage devices - flash keys, disks, CDROMs, multi-card readers, etc. OFW also supports USB keyboards, but I haven't yet figured out how to make that work under QEMU. OFW supports some USB 2.0 network interfaces and some USB-to-serial adapters. You might be able to make those work using QEMU's ability to connect to real USB devices on the host. On real hardware, OFW supports UHCI (USB 1.1), OHCI (USB 1.1), and EHCI (USB 2.0) host controllers.
==== Sound ====
To enable sound support in QEMU, do this:
$ qemu -L . -bios emuofw.rom -hda fat:. -soundhw sb
In OFW:
ok select /sound
ok d# 200 d# 2000 tone
ok unselect
That plays a 200 Hz sine wave for 2 seconds (2000 mS). OFW can also play .wav files, but that's not included in this configuration.
QEMU has a lot of options to control the sound emulation; read the documentation to get totally confused.
OFW's SoundBlaster driver, as included in this configuration, is rather rudimentary. OFW has better drivers for the more common AC97 sound hardware.
__NOEDITSECTION__
3d1f9b5e8bf870b01b23f868e6001d48fc15f89d
How Local Variables in Forth Work --- Using Apple’s Open Firmware Implementation
0
46
416
415
2012-09-08T19:17:13Z
Programmingkid
15
wikitext
text/x-wiki
<FONT SIZE=4><FONT COLOR="#AA0000"><B><U>Contents:</U></B></FONT><BR>
How to try out these code examples<BR>
Declaring local variables<BR>
Setting local variables<BR>
Setting a local variables’ value automatically<BR>
Obtaining local variables’ values<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>How to try out these code examples</U></B></FONT><BR>
<BR>
The following example code may be entered and ran in Apple’s Open Firmware. In order to access Open Firmware, just hold down Command-Option-O-F while you boot your pre-Intel Mac. PowerPC iMacs and PowerBooks, iBooks, PowerMac G3’s, G4’s, and G5’s all have Open Firmware built-in. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Declaring local variables:</U></B></FONT><BR>
<BR>
Place curly braces next to the word name. The curly braces must be on the same line as the word’s name. The semicolon is optional. The semicolon lets the system know that the variables following it will not be initializing their values to the values that would have been popped from the stack. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 1</B></FONT><BR>
<BR>
<pre>
: myword { ; cat dog }
;
</pre>
<BR>
Omitting the semicolon will initialize the local variable’s values to values popped from the stack. Make sure the stack has enough values in it before proceeding. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Setting local variables:</U></B></FONT><FONT COLOR="#DD0000"><BR>
</FONT><BR>
The word “->” (hyphen greater-than) is used to set the values of local variables. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 2</B></FONT><BR>
<BR>
<pre>
: myword { ; cat dog }
4 -> cat
5 -> dog
;
</pre>
<BR>
In the above example, the numbers are each pushed into the stack first. Then the -> word pops a value out of the stack and sets each variable’s value to a popped value. If a value is already in the stack, the following code would work as well: -> cat (The 4 has been omitted).<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Setting a local variable’s value automatically</U></B></FONT><BR>
<BR>
When you don’t use the semicolon in the local variable declaration, the variables get their value from the stack. The order is the last variable declared is set to the last value pushed on the stack. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 3</B></FONT><BR>
<BR>
stack before myword is called<BR>
<BR>
3 <---- top of stack<BR>
2<BR>
1<BR>
<BR>
<pre>
: myword { one two three }
cr ." one = " one .
cr ." two = " two .
cr ." three = " three .
;
</pre>
<BR>
after myword is called ...<BR>
<BR>
one = 1<BR>
two = 2<BR>
three = 3<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Obtaining a local variable’s value</U></B></FONT><BR>
<BR>
To push a local variable’s value onto the stack, just enter a local variable’s name in a word. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 4</B></FONT><BR>
<BR>
<pre>
: myword { ; cat dog }
4 -> cat
5 -> dog
cat \ cat's value pushed onto stack ( - cat)
dog \ dog's value pushed onto stack (cat - cat dog )
+
cr
." Total animals = " .
cr
;
</pre>
<BR>
<BR>
</FONT>
6980fe800757092a2b018a157329028dd1c0fe29
417
416
2012-09-08T19:18:16Z
Programmingkid
15
wikitext
text/x-wiki
<FONT SIZE=4><FONT COLOR="#AA0000"><B><U>Contents:</U></B></FONT><BR>
How to try out these code examples<BR>
Declaring local variables<BR>
Setting local variables<BR>
Setting a local variables’ value automatically<BR>
Obtaining local variables’ values<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>How to try out these code examples</U></B></FONT><BR>
<BR>
The following example code may be entered and ran in Apple’s Open Firmware. In order to access Open Firmware, just hold down Command-Option-O-F while you boot your pre-Intel Mac. PowerPC iMacs and PowerBooks, iBooks, PowerMac G3’s, G4’s, and G5’s all have Open Firmware built-in. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Declaring local variables:</U></B></FONT><BR>
<BR>
Place curly braces next to the word name. The curly braces must be on the same line as the word’s name. The semicolon is optional. The semicolon lets the system know that the variables following it will not be initializing their values to the values that would have been popped from the stack. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 1</B></FONT><BR>
<BR>
<pre>
: myword { ; cat dog }
;
</pre>
<BR>
Omitting the semicolon will initialize the local variable’s values to values popped from the stack. Make sure the stack has enough values in it before proceeding. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Setting local variables:</U></B></FONT><FONT COLOR="#DD0000"><BR>
</FONT><BR>
The word “->” (hyphen greater-than) is used to set the values of local variables. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 2</B></FONT><BR>
<BR>
<pre>
: myword { ; cat dog }
4 -> cat
5 -> dog
;
</pre>
<BR>
In the above example, the numbers are each pushed into the stack first. Then the -> word pops a value out of the stack and sets each variable’s value to a popped value. If a value is already in the stack, the following code would work as well: -> cat (The 4 has been omitted).<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Setting a local variable’s value automatically</U></B></FONT><BR>
<BR>
When you don’t use the semicolon in the local variable declaration, the variables get their value from the stack. The order is the last variable declared is set to the last value pushed on the stack. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 3</B></FONT><BR>
<BR>
stack before myword is called ...<BR>
<BR>
3 <---- top of stack<BR>
2<BR>
1<BR>
<BR>
<pre>
: myword { one two three }
cr ." one = " one .
cr ." two = " two .
cr ." three = " three .
;
</pre>
<BR>
after myword is called ...<BR>
<BR>
one = 1<BR>
two = 2<BR>
three = 3<BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Obtaining a local variable’s value</U></B></FONT><BR>
<BR>
To push a local variable’s value onto the stack, just enter a local variable’s name in a word. <BR>
<BR>
<FONT COLOR="#003399"><B>Example 4</B></FONT><BR>
<BR>
<pre>
: myword { ; cat dog }
4 -> cat
5 -> dog
cat \ cat's value pushed onto stack ( - cat)
dog \ dog's value pushed onto stack (cat - cat dog )
+
cr
." Total animals = " .
cr
;
</pre>
<BR>
<BR>
</FONT>
2a508836ab6b10a6557f074d3a5761779dfa4db7
How to build OpenBIOS on Mac OS X
0
48
419
2012-12-17T18:28:45Z
Programmingkid
15
Created page with "<!--This file created by AppleWorks HTML Filter 6.0--> <HTML> <HEAD> <META NAME=GENERATOR CONTENT="AppleWorks HTML Filter 6.0"> <META HTTP-EQUIV="Content-Type" CONTENT="text/h..."
wikitext
text/x-wiki
<!--This file created by AppleWorks HTML Filter 6.0-->
<HTML>
<HEAD>
<META NAME=GENERATOR CONTENT="AppleWorks HTML Filter 6.0">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=macintosh">
<TITLE>Building OpenBIOS on OS X.cwk</TITLE>
</HEAD>
<BODY >
<P ALIGN=CENTER><FONT SIZE=5><B>How to build OpenBIOS on Mac OS X<BR>
</B></FONT><BR>
</P>
<P><BR>
Apple’s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
Disclaimer: You assume all risk involved when following this tutorial. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: <A HREF="http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2"><FONT COLOR="#0000DD"><U>http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2</A></U></FONT><BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the “AWOS Cross-Compiler for OS X” file on the newly mounted disk.<BR>
<BR>
6) Select the “PowerPC Support” check box only when given the option.<BR>
<IMG SRC="Building OpenBIOS on OS X.1.jpg"><BR>
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler’s folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. <BR>
<BR>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell’s documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR>
<BR>
Part 2: Required changes to OpenBIOS source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Copy this patch and place it into a file. Call the file mac.patch.<BR>
<BR>
<FONT COLOR="#008800"># start of patch</FONT><BR>
<BR>
Index: config/scripts/switch-arch<BR>
===================================================================<BR>
--- config/scripts/switch-arch (revision 1080)<BR>
+++ config/scripts/switch-arch (working copy)<BR>
@@ -89,16 +89,27 @@<BR>
<BR>
archname()<BR>
{<BR>
- HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \<BR>
- -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \<BR>
- -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \<BR>
- -e "s/Power Macintosh/ppc/"`<BR>
+ OS_NAME=`uname`<BR>
+ if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X<BR>
+ IS_64BIT=`sysctl hw.cpu64bit_capable`<BR>
+ if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then<BR>
+ HOSTARCH="amd64"<BR>
+ else<BR>
+ HOSTARCH="x86"<BR>
+ fi<BR>
+ else<BR>
+ HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \<BR>
+ -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \<BR>
+ -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \<BR>
+ -e "s/Power Macintosh/ppc/"`<BR>
+ fi<BR>
}<BR>
<BR>
select_prefix()<BR>
{<BR>
- for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi-<BR>
+ for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf-<BR>
do<BR>
+ echo "Trying ${TARGET}gcc"<BR>
if type ${TARGET}gcc > /dev/null 2>&1<BR>
then<BR>
return<BR>
<BR>
<BR>
<FONT COLOR="#770000"># end of patch</FONT><BR>
<BR>
<BR>
4) Apply the patch to your OpenBIOS source code using the patch command. <BR>
Example: patch -p0 < ~/Desktop/mac.patch<BR>
<BR>
If everything went to plan, you would see something like this: patching file config/scripts/switch-arch.<BR>
<BR>
If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn’t help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR>
<BR>
<BR>
That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose.<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
<BR>
<BR>
This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
</BODY>
</HTML>
ff5c8b35da9c9835e4d5eac848c00e3b32214a29
420
419
2012-12-17T18:33:27Z
Programmingkid
15
wikitext
text/x-wiki
<P ALIGN=CENTER><FONT SIZE=5><B>How to build OpenBIOS on Mac OS X<BR>
</B></FONT><BR>
</P>
<P><BR>
Apple’s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
Disclaimer: You assume all risk involved when following this tutorial. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: <A HREF="http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2"><FONT COLOR="#0000DD"><U>http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2</A></U></FONT><BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the “AWOS Cross-Compiler for OS X” file on the newly mounted disk.<BR>
<BR>
6) Select the “PowerPC Support” check box only when given the option.<BR>
<IMG SRC="Building OpenBIOS on OS X.1.jpg"><BR>
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler’s folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. <BR>
<BR>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell’s documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR>
<BR>
Part 2: Required changes to OpenBIOS source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Copy this patch and place it into a file. Call the file mac.patch.<BR>
<BR>
<FONT COLOR="#008800"># start of patch</FONT><BR>
<BR>
Index: config/scripts/switch-arch<BR>
===================================================================<BR>
--- config/scripts/switch-arch (revision 1080)<BR>
+++ config/scripts/switch-arch (working copy)<BR>
@@ -89,16 +89,27 @@<BR>
<BR>
archname()<BR>
{<BR>
- HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \<BR>
- -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \<BR>
- -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \<BR>
- -e "s/Power Macintosh/ppc/"`<BR>
+ OS_NAME=`uname`<BR>
+ if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X<BR>
+ IS_64BIT=`sysctl hw.cpu64bit_capable`<BR>
+ if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then<BR>
+ HOSTARCH="amd64"<BR>
+ else<BR>
+ HOSTARCH="x86"<BR>
+ fi<BR>
+ else<BR>
+ HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \<BR>
+ -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \<BR>
+ -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \<BR>
+ -e "s/Power Macintosh/ppc/"`<BR>
+ fi<BR>
}<BR>
<BR>
select_prefix()<BR>
{<BR>
- for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi-<BR>
+ for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf-<BR>
do<BR>
+ echo "Trying ${TARGET}gcc"<BR>
if type ${TARGET}gcc > /dev/null 2>&1<BR>
then<BR>
return<BR>
<BR>
<BR>
<FONT COLOR="#770000"># end of patch</FONT><BR>
<BR>
<BR>
4) Apply the patch to your OpenBIOS source code using the patch command. <BR>
Example: patch -p0 < ~/Desktop/mac.patch<BR>
<BR>
If everything went to plan, you would see something like this: patching file config/scripts/switch-arch.<BR>
<BR>
If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn’t help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR>
<BR>
<BR>
That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose.<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
<BR>
<BR>
This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
3ce7995e82ad436c3e79afccbef77d7625031de1
421
420
2012-12-17T18:53:03Z
Programmingkid
15
wikitext
text/x-wiki
<P ALIGN=CENTER><FONT SIZE=5><B>How to build OpenBIOS on Mac OS X<BR>
</B></FONT><BR>
</P>
<P><BR>
Apple’s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
Disclaimer: You assume all risk involved when following this tutorial. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the “AWOS Cross-Compiler for OS X” file on the newly mounted disk.<BR>
<BR>
6) Select the “PowerPC Support” check box only when given the option.<BR>
<IMG SRC="Building OpenBIOS on OS X.1.jpg"><BR>
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler’s folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. <BR>
<BR>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell’s documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR>
<BR>
Part 2: Required changes to OpenBIOS source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Copy this patch and place it into a file. Call the file mac.patch.<BR>
<BR>
<pre>
Index: config/scripts/switch-arch
===================================================================
--- config/scripts/switch-arch (revision 1080)
+++ config/scripts/switch-arch (working copy)
@@ -89,16 +89,27 @@
archname()
{
- HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
- -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
- -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
- -e "s/Power Macintosh/ppc/"`
+ OS_NAME=`uname`
+ if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X
+ IS_64BIT=`sysctl hw.cpu64bit_capable`
+ if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then
+ HOSTARCH="amd64"
+ else
+ HOSTARCH="x86"
+ fi
+ else
+ HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
+ -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
+ -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
+ -e "s/Power Macintosh/ppc/"`
+ fi
}
select_prefix()
{
- for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi-
+ for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf-
do
+ echo "Trying ${TARGET}gcc"
if type ${TARGET}gcc > /dev/null 2>&1
then
return
</pre>
<BR>
4) Apply the patch to your OpenBIOS source code using the patch command. <BR>
Example: patch -p0 < ~/Desktop/mac.patch<BR>
<BR>
If everything went to plan, you would see something like this: patching file config/scripts/switch-arch.<BR>
<BR>
If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn’t help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR>
<BR>
<BR>
That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose.<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
<BR>
<BR>
This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
bc0380b52a2712da249b280dddb669cac82f2b5d
422
421
2012-12-17T18:59:12Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple’s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
Disclaimer: You assume all risk involved when following this tutorial. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the “AWOS Cross-Compiler for OS X” file on the newly mounted disk.<BR>
<BR>
6) Select the “PowerPC Support” check box only when given the option.<BR>
<IMG SRC="Building OpenBIOS on OS X.1.jpg"><BR>
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler’s folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. <BR>
<BR>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell’s documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR>
<BR>
Part 2: Required changes to OpenBIOS source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Copy this patch and place it into a file. Call the file mac.patch.<BR>
<BR>
<pre>
Index: config/scripts/switch-arch
===================================================================
--- config/scripts/switch-arch (revision 1080)
+++ config/scripts/switch-arch (working copy)
@@ -89,16 +89,27 @@
archname()
{
- HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
- -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
- -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
- -e "s/Power Macintosh/ppc/"`
+ OS_NAME=`uname`
+ if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X
+ IS_64BIT=`sysctl hw.cpu64bit_capable`
+ if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then
+ HOSTARCH="amd64"
+ else
+ HOSTARCH="x86"
+ fi
+ else
+ HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
+ -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
+ -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
+ -e "s/Power Macintosh/ppc/"`
+ fi
}
select_prefix()
{
- for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi-
+ for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf-
do
+ echo "Trying ${TARGET}gcc"
if type ${TARGET}gcc > /dev/null 2>&1
then
return
</pre>
<BR>
4) Apply the patch to your OpenBIOS source code using the patch command. <BR>
Example: patch -p0 < ~/Desktop/mac.patch<BR>
<BR>
If everything went to plan, you would see something like this: patching file config/scripts/switch-arch.<BR>
<BR>
If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn’t help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR>
<BR>
<BR>
That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose.<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
<BR>
<BR>
This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
288990fdc48546722466f64a707198f252c010cb
423
422
2012-12-17T19:08:18Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple’s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
Disclaimer: You assume all risk involved when following this tutorial. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the “AWOS Cross-Compiler for OS X” file on the newly mounted disk.<BR>
<BR>
6) Select the “PowerPC Support” check box only when given the option.
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler’s folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. <BR>
<BR>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell’s documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR>
<BR>
Part 2: Required changes to OpenBIOS source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Copy this patch and place it into a file. Call the file mac.patch.<BR>
<BR>
<pre>
Index: config/scripts/switch-arch
===================================================================
--- config/scripts/switch-arch (revision 1080)
+++ config/scripts/switch-arch (working copy)
@@ -89,16 +89,27 @@
archname()
{
- HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
- -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
- -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
- -e "s/Power Macintosh/ppc/"`
+ OS_NAME=`uname`
+ if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X
+ IS_64BIT=`sysctl hw.cpu64bit_capable`
+ if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then
+ HOSTARCH="amd64"
+ else
+ HOSTARCH="x86"
+ fi
+ else
+ HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
+ -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
+ -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
+ -e "s/Power Macintosh/ppc/"`
+ fi
}
select_prefix()
{
- for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi-
+ for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf-
do
+ echo "Trying ${TARGET}gcc"
if type ${TARGET}gcc > /dev/null 2>&1
then
return
</pre>
<BR>
4) Apply the patch to your OpenBIOS source code using the patch command. <BR>
Example: patch -p0 < ~/Desktop/mac.patch<BR>
:If everything went to plan, you would see something like this: patching file config/scripts/switch-arch.
:If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn't help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR>
<BR>
<BR>
That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose.<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
<BR>
<BR>
This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
167f00cb416357c39b2a21a4476734892e93d749
424
423
2012-12-17T19:10:00Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple’s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
Disclaimer: You assume all risk involved when following this tutorial. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the “AWOS Cross-Compiler for OS X” file on the newly mounted disk.<BR>
<BR>
6) Select the “PowerPC Support” check box only when given the option.
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin.
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR>
<BR>
Part 2: Required changes to OpenBIOS source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Copy this patch and place it into a file. Call the file mac.patch.<BR>
<BR>
<pre>
Index: config/scripts/switch-arch
===================================================================
--- config/scripts/switch-arch (revision 1080)
+++ config/scripts/switch-arch (working copy)
@@ -89,16 +89,27 @@
archname()
{
- HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
- -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
- -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
- -e "s/Power Macintosh/ppc/"`
+ OS_NAME=`uname`
+ if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X
+ IS_64BIT=`sysctl hw.cpu64bit_capable`
+ if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then
+ HOSTARCH="amd64"
+ else
+ HOSTARCH="x86"
+ fi
+ else
+ HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
+ -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
+ -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
+ -e "s/Power Macintosh/ppc/"`
+ fi
}
select_prefix()
{
- for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi-
+ for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf-
do
+ echo "Trying ${TARGET}gcc"
if type ${TARGET}gcc > /dev/null 2>&1
then
return
</pre>
<BR>
4) Apply the patch to your OpenBIOS source code using the patch command. <BR>
Example: patch -p0 < ~/Desktop/mac.patch<BR>
:If everything went to plan, you would see something like this: patching file config/scripts/switch-arch.
:If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn't help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR>
<BR>
<BR>
That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose.<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
<BR>
<BR>
This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
777f77bebb3065e414468c16351f9618afaea878
425
424
2012-12-18T16:13:32Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple’s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
Disclaimer: You assume all risk involved when following this tutorial. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the “AWOS Cross-Compiler for OS X” file on the newly mounted disk.<BR>
<BR>
6) Select the “PowerPC Support” check box only when given the option.
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin.
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR>
<BR>
Part 2: Required changes to OpenBIOS source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Copy this patch and place it into a file. Call the file mac.patch.<BR>
<BR>
<pre>
Index: config/scripts/switch-arch
===================================================================
--- config/scripts/switch-arch (revision 1080)
+++ config/scripts/switch-arch (working copy)
@@ -89,16 +89,27 @@
archname()
{
- HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
- -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
- -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
- -e "s/Power Macintosh/ppc/"`
+ OS_NAME=`uname`
+ if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X
+ IS_64BIT=`sysctl hw.cpu64bit_capable`
+ if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then
+ HOSTARCH="amd64"
+ else
+ HOSTARCH="x86"
+ fi
+ else
+ HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
+ -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
+ -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
+ -e "s/Power Macintosh/ppc/"`
+ fi
}
select_prefix()
{
- for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi-
+ for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf-
do
+ echo "Trying ${TARGET}gcc"
if type ${TARGET}gcc > /dev/null 2>&1
then
return
</pre>
<BR>
4) Apply the patch to your OpenBIOS source code using the patch command. <BR>
Example: patch -p0 < ~/Desktop/mac.patch<BR>
:If everything went to plan, you would see something like this: patching file config/scripts/switch-arch.
:If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn't help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR>
<BR>
<BR>
That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
<BR>
<BR>
This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
8c9cebb41158ecc671e8b38cf26b557ba161695a
426
425
2013-04-19T00:53:39Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple’s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
Disclaimer: You assume all risk involved when following this tutorial. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the “AWOS Cross-Compiler for OS X” file on the newly mounted disk.<BR>
<BR>
6) Select the “PowerPC Support” check box only when given the option.
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin.
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR>
<BR>
Part 2: Required changes to OpenBIOS source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Copy this patch and place it into a file. Call the file mac.patch.<BR>
<BR>
<pre>
Index: config/scripts/switch-arch
===================================================================
--- config/scripts/switch-arch (revision 1117)
+++ config/scripts/switch-arch (working copy)
@@ -89,16 +89,27 @@
archname()
{
- HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
- -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
- -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
- -e "s/Power Macintosh/ppc/"`
+ OS_NAME=`uname`
+ if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X
+ IS_64BIT=`sysctl hw.cpu64bit_capable`
+ if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then
+ HOSTARCH="amd64"
+ else
+ HOSTARCH="x86"
+ fi
+ else
+ HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \
+ -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \
+ -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \
+ -e "s/Power Macintosh/ppc/"`
+ fi
}
select_prefix()
{
- for TARGET in ${1}-unknown-linux-gnu- ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi-
+ for TARGET in ${1}-unknown-linux-gnu- ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf-
do
+ echo "Trying ${TARGET}gcc"
if type ${TARGET}gcc > /dev/null 2>&1
then
return
</pre>
<BR>
4) Apply the patch to your OpenBIOS source code using the patch command. <BR>
Example: patch -p0 < ~/Desktop/mac.patch<BR>
:If everything went to plan, you would see something like this: patching file config/scripts/switch-arch.
:If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn't help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR>
<BR>
<BR>
That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
<BR>
<BR>
This tutorial was made using information available on 4/18/13. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
276f05beb5adcc9e0f76b26d8d8295c15de636b7
433
426
2017-12-21T23:39:18Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" check box only when given the option.
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin.
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
772603349e4bb0036bfa94c18c5e6e1b6dc42363
434
433
2017-12-21T23:41:43Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.
[[File:Installer.[ng]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin.
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
d10c708f39b998517b846a728440d146d3634106
435
434
2017-12-21T23:42:07Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin.
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
86c9040e46474ca9c5118981af77b6f9232c2433
437
435
2017-12-21T23:49:08Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin.
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
e3e9ec11353b07a77ee8332dbce9594d66f8ab90
439
437
2017-12-21T23:50:53Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin.
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
./config/scripts/switch-arch cross-pcc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
39c6da2554001128acf005c913e577ac4bac7876
440
439
2017-12-21T23:59:10Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin.
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
3748c66032c47378db08249d18aaec65d213f1da
441
440
2017-12-22T00:02:41Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=:/usr/local/ppcelfgcc/bin
export PATH=:/usr/local/i386elf/bin
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
c2cf23b5408eb74c34288889fa46d522b2a6579d
442
441
2017-12-22T00:03:05Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=:/usr/local/ppcelfgcc/bin
export PATH=:/usr/local/i386elf/bin<br>
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
e0a08fe4134cdcba9da5d352ffbce9032a0c3886
443
442
2017-12-22T00:03:34Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=:/usr/local/ppcelfgcc/bin<br>
export PATH=:/usr/local/i386elf/bin<br>
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
1d0591aa0b2e2282db7ccbc1579fefc7d775ad99
444
443
2017-12-22T00:05:38Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=:/usr/local/ppcelfgcc/bin<br>
export PATH=:/usr/local/i386elf/i386elf/bin<br>
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
b35145da26f6ea7c996c6f94ea69bba0a5d8dc91
445
444
2017-12-22T00:09:59Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=PATH:/usr/local/ppcelfgcc/bin<br>
export PATH=PATH:/usr/local/i386elf/i386elf/bin<br>
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
fc83fccece80a2374c41796d24a44af3fad47f75
446
445
2017-12-22T00:11:28Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=PATH:/usr/local/ppcelfgcc/bin<br>
export PATH=PATH:/usr/local/i386elf/i386elf/bin<br>
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br>
To open this file use these commands:<br>
cd ~<br>
open .bash_profile<br>
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
7fb1000a0ad059ee6325c35033f19f287d88d158
447
446
2017-12-22T00:12:23Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=PATH:/usr/local/ppcelfgcc/bin<br>
export PATH=PATH:/usr/local/i386elf/i386elf/bin<br>
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br>
To open this file use these commands:<br>
cd ~<br>
open .bash_profile<br>
Then simply paste the export commands in this file. Save changes when you are done.
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
e86be87e01007a5a70acc1b503544609cf2ddf27
448
447
2017-12-22T00:16:18Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=$PATH:/usr/local/ppcelfgcc/bin<br>
export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br>
:Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br>
To open this file use these commands:<br>
cd ~<br>
open .bash_profile<br>
Then simply paste the export commands in this file. Save changes when you are done.
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
9f054f4f07f38c3ec9698de7934627318935621a
449
448
2017-12-22T00:16:57Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=$PATH:/usr/local/ppcelfgcc/bin<br>
export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br>
To open this file use these commands:<br>
cd ~<br>
open .bash_profile<br>
Then simply paste the export commands in this file. Save changes when you are done.
<BR>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
59184b06cfb83576fc3ad334fbfc5730903c88e4
450
449
2017-12-22T00:18:58Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=$PATH:/usr/local/ppcelfgcc/bin<br>
export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br>
To open this file use these commands:<br>
cd ~<br>
open .bash_profile<br>
Then simply paste the export commands in this file. Save changes when you are done.
<BR>
To test to see if the cross compilers work issue these commands:<br>
i386-elf-gcc --version
<br>
ppc-elf-gcc --version
<br>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
92880015e20838774a8df33541e0e3bcc4ba34a5
OpenBIOS
0
16
185
184
2013-05-04T11:21:36Z
BlueSwirl
14
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
OpenBIOS v1.1 has been released. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD and some later versions of Solaris. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can boot Linux with virtio drivers.
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
First, make the switch-arch script executable:
$ chmod +x ./config/scripts/switch-arch
Second, select the build targets:
$ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64
Finally the build command:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
or
$ make -C obj-ppc CC=powerpc-elf-gcc
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
a6495d9ca2fbd3b1384a5ea05ef02eb3af538981
186
185
2013-05-04T11:35:53Z
BlueSwirl
14
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include:
* Internal memory API (OFMEM) implementation
* Forth Source Debugger
* 64-bit 1275 6d5 implementation
* Forth Local Variables
* Internal libopenbios code reorganisation
See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64.
OpenBIOS/SPARC32 is currently able to boot the following OS/kernels:
* Linux
* NetBSD
* OpenBSD
* Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work)
OpenBIOS/SPARC64 is currently able to boot the following OS/kernels:
* Linux (with virtio drivers)
OpenBIOS/PPC is currently able to boot the following OS/kernels:
* Linux
* HelenOS
The following kernels will partially boot, but still suffer from some emulation bugs under QEMU:
* FreeBSD
* NetBSD
* Darwin/OS X
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
First, make the switch-arch script executable:
$ chmod +x ./config/scripts/switch-arch
Second, select the build targets:
$ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64
Finally the build command:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
or
$ make -C obj-ppc CC=powerpc-elf-gcc
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
9473fc564f7cb5ca3000bb018d55f765bf902fe3
187
186
2015-04-28T19:42:59Z
Programmingkid
15
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include:
* Internal memory API (OFMEM) implementation
* Forth Source Debugger
* 64-bit 1275 6d5 implementation
* Forth Local Variables
* Internal libopenbios code reorganisation
See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64.
OpenBIOS/SPARC32 is currently able to boot the following OS/kernels:
* Linux
* NetBSD
* OpenBSD
* Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work)
OpenBIOS/SPARC64 is currently able to boot the following OS/kernels:
* Linux (with virtio drivers)
OpenBIOS/PPC is currently able to boot the following OS/kernels:
* Linux
* HelenOS
The following kernels will partially boot, but still suffer from some emulation bugs under QEMU:
* FreeBSD
* NetBSD
* Darwin/OS X
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
Download fcode suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
Build the needed programs inside the fcode-utils-devel folder:
$ make
Install the programs:
$ make install
Download OpenBIOS:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
Select the build targets:
$ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64
Build OpenBIOS:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
or
$ make -C obj-ppc CC=powerpc-elf-gcc
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= Troubleshooting =
Seeing this message? Unable to locate toke executable from the fcode-utils package - aborting
<br>- Install the fcode suite first before trying to build OpenBIOS.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
e3487d159b657bf2146a245abfb8db60484bfc20
188
187
2015-04-28T19:59:37Z
Programmingkid
15
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include:
* Internal memory API (OFMEM) implementation
* Forth Source Debugger
* 64-bit 1275 6d5 implementation
* Forth Local Variables
* Internal libopenbios code reorganisation
See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64.
OpenBIOS/SPARC32 is currently able to boot the following OS/kernels:
* Linux
* NetBSD
* OpenBSD
* Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work)
OpenBIOS/SPARC64 is currently able to boot the following OS/kernels:
* Linux (with virtio drivers)
OpenBIOS/PPC is currently able to boot the following OS/kernels:
* Linux
* HelenOS
The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU:
* FreeBSD
* NetBSD
* Darwin/Mac OS X
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
Download fcode suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
Build the needed programs inside the fcode-utils-devel folder:
$ make
Install the programs:
$ make install
Download OpenBIOS:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
Select the build targets:
$ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64
Build OpenBIOS:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
or
$ make -C obj-ppc CC=powerpc-elf-gcc
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= Troubleshooting =
Seeing this message? Unable to locate toke executable from the fcode-utils package - aborting
<br>- Install the fcode suite first before trying to build OpenBIOS.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
58167d93c5c65cf7b2d5d8acdd18e1137b4a17e0
189
188
2015-05-14T15:39:40Z
Programmingkid
15
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include:
* Internal memory API (OFMEM) implementation
* Forth Source Debugger
* 64-bit 1275 6d5 implementation
* Forth Local Variables
* Internal libopenbios code reorganisation
See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64.
OpenBIOS/SPARC32 is currently able to boot the following OS/kernels:
* Linux
* NetBSD
* OpenBSD
* Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work)
OpenBIOS/SPARC64 is currently able to boot the following OS/kernels:
* Linux (with virtio drivers)
OpenBIOS/PPC is currently able to boot the following OS/kernels:
* Linux
* HelenOS
The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU:
* FreeBSD
* NetBSD
* Darwin/Mac OS X
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
Download fcode suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
Build the needed programs inside the fcode-utils-devel folder:
$ make
Install the programs:
$ make install
Download OpenBIOS:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
Select the build targets:
$ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64
Build OpenBIOS:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
or
$ make -C obj-ppc CC=powerpc-elf-gcc
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= Additional Resources =
[http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2 PowerPC elf cross compiler for Mac OS X]
*This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script.
Example:
CROSS_COMPILE=ppc-elf- ./switch-arch ppc
= Notes for Building on Mac OS X =
There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem.
If this happens to you, try setting the HOSTARCH variable before using the switch-arch script.
Example:
HOSTARCH=amd64 ./switch-arch ppc
= Troubleshooting =
Seeing this message? Unable to locate toke executable from the fcode-utils package - aborting
<br>- Install the fcode suite first before trying to build OpenBIOS.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
3e287395e707ad443cc3acab59960290d29564d2
190
189
2015-05-14T15:45:53Z
Programmingkid
15
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include:
* Internal memory API (OFMEM) implementation
* Forth Source Debugger
* 64-bit 1275 6d5 implementation
* Forth Local Variables
* Internal libopenbios code reorganisation
See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64.
OpenBIOS/SPARC32 is currently able to boot the following OS/kernels:
* Linux
* NetBSD
* OpenBSD
* Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work)
OpenBIOS/SPARC64 is currently able to boot the following OS/kernels:
* Linux (with virtio drivers)
OpenBIOS/PPC is currently able to boot the following OS/kernels:
* Linux
* HelenOS
The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU:
* FreeBSD
* NetBSD
* Darwin/Mac OS X
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
Download fcode suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
Build the needed programs inside the fcode-utils-devel folder:
$ make
Install the programs:
$ make install
Download OpenBIOS:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
Select the build targets:
$ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64
Build OpenBIOS:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
or
$ make -C obj-ppc CC=powerpc-elf-gcc
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= Additional Resources =
[http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2 PowerPC elf cross compiler for Mac OS X]
*This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script.
Example:
CROSS_COMPILE=ppc-elf- ./switch-arch ppc
= Notes for Building on Mac OS X =
There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem.
If this happens to you, try setting the HOSTARCH variable before using the switch-arch script.
Example:
HOSTARCH=amd64 ./switch-arch ppc
= Troubleshooting =
Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting''
<br>- Install the fcode suite first before trying to build OpenBIOS.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
0680538701d864af7675669f0a1dbb45a64bff6e
191
190
2015-05-14T16:04:50Z
Programmingkid
15
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include:
* Internal memory API (OFMEM) implementation
* Forth Source Debugger
* 64-bit 1275 6d5 implementation
* Forth Local Variables
* Internal libopenbios code reorganisation
See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64.
OpenBIOS/SPARC32 is currently able to boot the following OS/kernels:
* Linux
* NetBSD
* OpenBSD
* Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work)
OpenBIOS/SPARC64 is currently able to boot the following OS/kernels:
* Linux (with virtio drivers)
OpenBIOS/PPC is currently able to boot the following OS/kernels:
* Linux
* HelenOS
The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU:
* FreeBSD
* NetBSD
* Darwin/Mac OS X
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
Download fcode suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
Build the needed programs inside the fcode-utils-devel folder:
$ make
Install the programs:
$ make install
Download OpenBIOS:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
Select the build targets:
$ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64
Build OpenBIOS:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
or
$ make -C obj-ppc CC=powerpc-elf-gcc
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= Additional Resources =
[http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2 PowerPC elf cross compiler for Mac OS X]
*This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script.
Example:
CROSS_COMPILE=ppc-elf- ./switch-arch ppc
*As of May 2015, a problem with this compiler and the file usbohci.c causes compiling to fail. This is only because compiler warnings are being treated as errors. To disable this option, go to the Makefile.target file located at the root level of the openbios-devel folder and remove the "-Werror" text.
= Notes for Building on Mac OS X =
There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem.
If this happens to you, try setting the HOSTARCH variable before using the switch-arch script.
Example:
HOSTARCH=amd64 ./switch-arch ppc
= Troubleshooting =
Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting''
<br>- Install the fcode suite first before trying to build OpenBIOS.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
67277202b60fa0279d1cd6ef3333f148a3431f36
192
191
2015-05-14T16:07:55Z
Programmingkid
15
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include:
* Internal memory API (OFMEM) implementation
* Forth Source Debugger
* 64-bit 1275 6d5 implementation
* Forth Local Variables
* Internal libopenbios code reorganisation
See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64.
OpenBIOS/SPARC32 is currently able to boot the following OS/kernels:
* Linux
* NetBSD
* OpenBSD
* Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work)
OpenBIOS/SPARC64 is currently able to boot the following OS/kernels:
* Linux (with virtio drivers)
OpenBIOS/PPC is currently able to boot the following OS/kernels:
* Linux
* HelenOS
The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU:
* FreeBSD
* NetBSD
* Darwin/Mac OS X
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
Download fcode suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
Build the needed programs inside the fcode-utils-devel folder:
$ make
Install the programs:
$ make install
Download OpenBIOS:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
Select the build targets:
$ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64
Build OpenBIOS:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
or
$ make -C obj-ppc CC=powerpc-elf-gcc
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= Additional Resources =
[http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2 PowerPC elf cross compiler for Mac OS X]
*This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script.
Example:
CROSS_COMPILE=ppc-elf- ./switch-arch ppc
*As of May 2015, a problem with this compiler and the file usbohci.c causes compiling to fail. This is only because compiler warnings are being treated as errors. To disable this option, open the Makefile.target file (located at the root level of the openbios-devel folder) and remove the "-Werror" text.
= Notes for Building on Mac OS X =
There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem.
If this happens to you, try setting the HOSTARCH variable before using the switch-arch script.
Example:
HOSTARCH=amd64 ./switch-arch ppc
= Troubleshooting =
Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting''
<br>- Install the fcode suite first before trying to build OpenBIOS.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
d944241f9e568a44b2254f3762755218fd63edc2
193
192
2015-05-14T16:39:04Z
Programmingkid
15
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include:
* Internal memory API (OFMEM) implementation
* Forth Source Debugger
* 64-bit 1275 6d5 implementation
* Forth Local Variables
* Internal libopenbios code reorganisation
See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64.
OpenBIOS/SPARC32 is currently able to boot the following OS/kernels:
* Linux
* NetBSD
* OpenBSD
* Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work)
OpenBIOS/SPARC64 is currently able to boot the following OS/kernels:
* Linux (with virtio drivers)
OpenBIOS/PPC is currently able to boot the following OS/kernels:
* Linux
* HelenOS
The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU:
* FreeBSD
* NetBSD
* Darwin/Mac OS X
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
Download fcode suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
Build the needed programs inside the fcode-utils-devel folder:
$ make
Install the programs:
$ make install
Download OpenBIOS:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
Select the build targets:
$ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64
Build OpenBIOS:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
or
$ make -C obj-ppc CC=powerpc-elf-gcc
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= Additional Resources =
[http://www.mediafire.com/download/wy5xgj2hwjp8k4k/AWOS_Cross-Compilers.zip PowerPC, x86, ARM, and Sparc elf cross compilers for Mac OS X ]
*This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script.
Example:
CROSS_COMPILE=ppc-elf- ./switch-arch ppc
*As of May 2015, a problem with this compiler and the file usbohci.c causes compiling to fail. This is only because compiler warnings are being treated as errors. To disable this option, open the Makefile.target file (located at the root level of the openbios-devel folder) and remove the "-Werror" text.
= Notes for Building on Mac OS X =
There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem.
If this happens to you, try setting the HOSTARCH variable before using the switch-arch script.
Example:
HOSTARCH=amd64 ./switch-arch ppc
= Troubleshooting =
Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting''
<br>- Install the fcode suite first before trying to build OpenBIOS.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
6a7f09b23143ab6446185066783404cf35826c8d
194
193
2015-05-14T16:44:35Z
Programmingkid
15
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include:
* Internal memory API (OFMEM) implementation
* Forth Source Debugger
* 64-bit 1275 6d5 implementation
* Forth Local Variables
* Internal libopenbios code reorganisation
See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64.
OpenBIOS/SPARC32 is currently able to boot the following OS/kernels:
* Linux
* NetBSD
* OpenBSD
* Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work)
OpenBIOS/SPARC64 is currently able to boot the following OS/kernels:
* Linux (with virtio drivers)
OpenBIOS/PPC is currently able to boot the following OS/kernels:
* Linux
* HelenOS
The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU:
* FreeBSD
* NetBSD
* Darwin/Mac OS X
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
Download fcode suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
Build the needed programs inside the fcode-utils-devel folder:
$ make
Install the programs:
$ make install
Download OpenBIOS:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
Select the build targets:
$ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64
Build OpenBIOS:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
or
$ make -C obj-ppc CC=powerpc-elf-gcc
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= Additional Resources =
[http://www.mediafire.com/download/wy5xgj2hwjp8k4k/AWOS_Cross-Compilers.zip PowerPC, x86, ARM, and Sparc elf cross-compilers for Mac OS X ]
*This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script.
Example:
CROSS_COMPILE=ppc-elf- ./switch-arch ppc
*As of May 2015, a problem with this compiler and the file usbohci.c causes compiling to fail. This is only because compiler warnings are being treated as errors. To disable this option, open the Makefile.target file (located at the root level of the openbios-devel folder) and remove the "-Werror" text.
= Notes for Building on Mac OS X =
There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem.
If this happens to you, try setting the HOSTARCH variable before using the switch-arch script.
Example:
HOSTARCH=amd64 ./switch-arch ppc
= Troubleshooting =
Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting''
<br>- Install the fcode suite first before trying to build OpenBIOS.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
3cee7d2d6ea0d5f64073d8ea46be1a0f7a142ea3
195
194
2016-07-08T17:22:21Z
Programmingkid
15
Add Mac OS 9 info
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include:
* Internal memory API (OFMEM) implementation
* Forth Source Debugger
* 64-bit 1275 6d5 implementation
* Forth Local Variables
* Internal libopenbios code reorganisation
See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64.
OpenBIOS/SPARC32 is currently able to boot the following OS/kernels:
* Linux
* NetBSD
* OpenBSD
* Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work)
OpenBIOS/SPARC64 is currently able to boot the following OS/kernels:
* Linux (with virtio drivers)
OpenBIOS/PPC is currently able to boot the following OS/kernels:
* Linux
* HelenOS
The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU:
* FreeBSD
* NetBSD
* Darwin/Mac OS X
* Mac OS 9
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
if you want a specific revision:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153
or for checking out the source code for the OpenBIOS FCode Suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki>
or
$ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki>
For versions prior to r470, please remove the /trunk component from the path.
== Developer access ==
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:
$ svn co svn://username@openbios.org/openbios/trunk/openbios-devel
Subversion has commands very similar to CVS.
= Source code browsing =
You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly.
= Building OpenBIOS =
Download fcode suite:
$ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel
Build the needed programs inside the fcode-utils-devel folder:
$ make
Install the programs:
$ make install
Download OpenBIOS:
$ svn co svn://openbios.org/openbios/trunk/openbios-devel
Select the build targets:
$ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64
Build OpenBIOS:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
or
$ make -C obj-ppc CC=powerpc-elf-gcc
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= Additional Resources =
[http://www.mediafire.com/download/wy5xgj2hwjp8k4k/AWOS_Cross-Compilers.zip PowerPC, x86, ARM, and Sparc elf cross-compilers for Mac OS X ]
*This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script.
Example:
CROSS_COMPILE=ppc-elf- ./switch-arch ppc
*As of May 2015, a problem with this compiler and the file usbohci.c causes compiling to fail. This is only because compiler warnings are being treated as errors. To disable this option, open the Makefile.target file (located at the root level of the openbios-devel folder) and remove the "-Werror" text.
= Notes for Building on Mac OS X =
There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem.
If this happens to you, try setting the HOSTARCH variable before using the switch-arch script.
Example:
HOSTARCH=amd64 ./switch-arch ppc
= Troubleshooting =
Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting''
<br>- Install the fcode suite first before trying to build OpenBIOS.
= More on Subversion =
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.
* [http://subversion.tigris.org/ Subversion homepage]
__NOEDITSECTION__
c592603d22940ba1e7b92c722e003063f89ef0f1
196
195
2016-07-09T23:43:18Z
Mark
16
wikitext
text/x-wiki
= OpenBIOS - Code Releases =
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.
After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include:
* Internal memory API (OFMEM) implementation
* Forth Source Debugger
* 64-bit 1275 6d5 implementation
* Forth Local Variables
* Internal libopenbios code reorganisation
See the [https://github.com/openbios/openbios/issues OpenBIOS issue tracker] for milestones, tasks and open bugs.
= OpenBIOS =
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.
Latest release version is: [https://github.com/openbios/openbios/archive/v1.1.zip OpenBIOS 1.1] (2013-05-04)
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.
= Status and use cases =
OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64.
OpenBIOS/SPARC32 is currently able to boot the following OS/kernels:
* Linux
* NetBSD
* OpenBSD
* Solaris
OpenBIOS/SPARC64 is currently able to boot the following OS/kernels:
* Linux
* NetBSD
* OpenBSD
* FreeBSD
* HelenOS
OpenBIOS/PPC is currently able to boot the following OS/kernels:
* Linux
* HelenOS
* Darwin/Mac OS X
The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU:
* FreeBSD
* NetBSD
* Mac OS 9
[http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86.
Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware!
== Kernel ==
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12).
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.
= Development Environment =
== FCode Suite ==
To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].
== Flashing ==
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''.
= Development Repository =
OpenBIOS keeps its development tree in a [http://git-scm.com/ git ] repository. If you do not want to use git, please have a look at the [[#Snapshots|Snapshots]] below.
== Anonymous access ==
You can check it out as follows:
$ git clone https://github.com/openbios/openbios.git
or for checking out the source code for the OpenBIOS FCode Suite:
$ git clone https://github.com/openbios/fcode-utils.git
== Developer access ==
Access for developers is very similar to anonymous access. Just add your github username as follows when checking out the repository:
$ git clone https://username@github.com/openbios/openbios.git
= Source code browsing =
You can also browse the [https://github.com/openbios/openbios OpenBIOS github repository] online.
= Snapshots =
There is currently no archive of snapshots available for OpenBIOS. You can use the [https://github.com/openbios/openbios source code browser] to download a ZIP archive of any revision.
Alternatively you can also download the [https://github.com/openbios/openbios/archive/master.zip most current snapshot] directly.
= Building OpenBIOS =
Download fcode suite:
$ git clone https://github.com/openbios/fcode-utils.git
Build the needed programs inside the fcode-utils-devel folder:
$ make
Install the programs:
$ make install
Download OpenBIOS:
$ git clone https://github.com/openbios/openbios.git
Select the build targets:
$ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64
Build OpenBIOS:
$ make
or
$ make build-verbose
OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work.
If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with:
$ make build-verbose TARGET=powerpc-elf-
or
$ make -C obj-ppc CC=powerpc-elf-gcc
The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix.
= Additional Resources =
[http://www.mediafire.com/download/wy5xgj2hwjp8k4k/AWOS_Cross-Compilers.zip PowerPC, x86, ARM, and Sparc elf cross-compilers for Mac OS X ]
*This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script.
Example:
CROSS_COMPILE=ppc-elf- ./switch-arch ppc
= Notes for Building on Mac OS X =
There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem.
If this happens to you, try setting the HOSTARCH variable before using the switch-arch script.
Example:
HOSTARCH=amd64 ./switch-arch ppc
= Troubleshooting =
Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting''
<br>- Install the fcode suite first before trying to build OpenBIOS.
__NOEDITSECTION__
bcd6dcd3acb863e9a71d8311bbf4689c08063bcb
Welcome to OpenBIOS
0
2
47
46
2013-05-04T11:25:03Z
BlueSwirl
14
wikitext
text/x-wiki
<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware.
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code.
It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM, Sparc and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, [[SLOF|IBM]] and others.
In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://www.denx.de/wiki/U-Boot U-Boot].
</div>
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%
|-
|style="vertical-align:top"|
== Download ==
Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side.
== Contact ==
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.
== Credits ==
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.
|style="vertical-align:top"|
== News ==
<small>
'''OpenBIOS v1.1 released''' (2013-05-04)
After 4 years of hard work, the OpenBIOS team are proud to announce the release of OpenBIOS 1.1. Since the last release, over 600 commits have been made to the SVN repository with a wealth of improvements and new features. As a result of these changes, the ability of OpenBIOS 1.1 to boot various kernels under QEMU has significantly improved.
For more information, please visit the [[OpenBIOS|development page]].
'''OpenBIOS v1.0 released''' (2009-03-01)
OpenBIOS v1.0 has been released. For more information, please visit the [[OpenBIOS|development page]].
'''FCODE suite 1.0.2 released''' (2006-10-30)
[mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].
'''LinuxBIOS Symposium 2006''' (2006-10-01)
The first European [http://www.coreboot.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].
'''FCODE suite 1.0.1 available''' (2006-09-21)
[mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.
'''SUN released OpenBOOT source code''' (2006-09-06)
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website] to download the full archive (190MB) or check out our [[OpenBOOT|local mirror]] (1.7MB).
[[News|[older news]]]
</small>
|}
__NOTOC__
__NOEDITSECTION__
22d9adcf80a8a7462399927c270af71dd25a8c65
FCODE suite
0
17
271
270
2016-01-16T01:35:32Z
Stepan
2
wikitext
text/x-wiki
== What is the OpenBIOS FCODE Suite? ==
OpenBIOS provides a sophisticated set of FCODE utilities:
* the tokenizer '''toke'''
* the detokenizer '''detok'''
* and a PCI rom header utility.
* a portable implementation of forth local values
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].
== Downloading the OpenBIOS FCode Suite ==
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''
=== Source Code ===
View the [https://github.com/openbios/fcode-utils Sources] online. Available as a ZIP-File: [https://github.com/openbios/fcode-utils/archive/v1.0.2.zip FCode-utils 1.0.2]
See the [https://raw.githubusercontent.com/openbios/fcode-utils/v1.0.2/ChangeLog ChangeLog] for a list of changes since 1.0.1.
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].
=== Documentation ===
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.
It is important that these be kept in the same directory, as there are some links from one file to another.
The documents are User's Guides to:
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.
These documents are also part of the source code repository.
There is also doxygen generated documentation available
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10]
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]
* TODO: doxygen documentation for toke 1.0.2
=== Executables for three platforms ===
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.
There are separate directories for the Debug and Optim(ized Level)2 variants.
Under each are sub-directories for the different platforms, within which the executable images reside.
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]
=== Local Value Support ===
Includ-able tokenizer-source files for [https://github.com/openbios/fcode-utils/tree/master/localvalues Local Values Support] (explained in one of the User's Guide documents). Five files:
* One supplies the [https://github.com/openbios/fcode-utils/tree/master/localvalues/LocalValuesSupport.fth basic functionality]
* the second adds a [https://github.com/openbios/fcode-utils/tree/master/localvalues/LocalValuesDevelSupport.fth development-time facility]
* the third generates a variant behavior ([https://github.com/openbios/fcode-utils/tree/master/localvalues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node)
* and the fourth [https://github.com/openbios/fcode-utils/tree/master/localvalues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility].
* The fifth [https://github.com/openbios/fcode-utils/tree/master/localvalues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.
There is commentation in each one explaining how it is to be used.
Available as part of the OpenBIOS FCODE suite.
=== Todo ===
A list of "Still To Be Done" items, excerpted from the commentation in the Sources
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions.
This file is a [https://github.com/openbios/fcode-utils/tree/master/TODO collection of all of them] in a single convenient location.
== Unit-Test Suite ==
=== The suite of unit-test cases ===
This is the [https://github.com/openbios/fcode-utils/tree/master/testsuite accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.
Run the unit-test cases with
$ make tests
=== Test Tools ===
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes:
* [https://github.com/openbios/fcode-utils/tree/master/testsuite/AutoExec AutoExec] automates the execution, and
* [https://github.com/openbios/fcode-utils/tree/master/testsuite/AutoCompare AutoCompare] automates the comparison.
There is commentation in each explaining how it is used.
== Unit-Test Suite Logs ==
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms.
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.
All in all, five or six file differences will be expected to be reported by AutoCompare.
* The results from a run of the Unit-Test Suite on the [https://github.com/openbios/fcode-utils/tree/master/testlogs/testlogs-x86-cygwin X86/Cygwin] platform.
* The results from a run of the Unit-Test Suite on the [https://github.com/openbios/fcode-utils/tree/master/testlogs/testlogs-ppc-linux PowerPC/Linux] platform.
* The results from a run of the Unit-Test Suite on the [https://github.com/openbios/fcode-utils/tree/master/testlogs/testlogs-ppc-aix PowerPC/AIX] platform.
== Coverage Reports ==
The test suite has been run using gcov/lcov to produce graphical code coverage reports.
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]
== Kudos and Thanks ==
<div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;">
The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:David@paktor.biz David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!'''
</div>
__NOEDITSECTION__
b369115445537a1bdbcce0d972adf43d2a22a415
Hauptseite
0
1
1
2016-10-27T13:56:54Z
MediaWiki default
0
wikitext
text/x-wiki
<strong>MediaWiki wurde installiert.</strong>
Hilfe zur Benutzung und Konfiguration der Wiki-Software findest du im [//meta.wikimedia.org/wiki/Help:Contents Benutzerhandbuch].
== Starthilfen ==
* [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Liste der Konfigurationsvariablen]
* [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki-FAQ]
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailingliste neuer MediaWiki-Versionen]
* [//www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Lokalisiere MediaWiki für deine Sprache]
* [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Erfahre, wie du Spam auf deinem Wiki bekämpfen kannst]
4f75d940dadec8f0cc78012ff33dda4e80e91b65
SLOF
0
37
427
391
2017-02-13T08:51:21Z
Mark
16
wikitext
text/x-wiki
Slimline Open Firmware (SLOF) is initialization and boot source code based on the IEEE-1275 (Open Firmware) standard, developed by engineers of the IBM Corporation.
The SLOF source code provides illustrates what's needed to initialize and boot Linux or a hypervisor on the industry Open Firmware boot standard.
The link below offers:
* Documentation
* Pseudo Open Firmware for prototyping, test, and debug
* Low Level Firmware for IBM's JS20 (closed source)
* https://github.com/aik/SLOF/
d057c57c6232a3a98e94dc7da3c3cbadc120c092
428
427
2017-02-13T08:52:31Z
Mark
16
wikitext
text/x-wiki
Slimline Open Firmware (SLOF) is initialization and boot source code based on the IEEE-1275 (Open Firmware) standard, developed by engineers of the IBM Corporation.
The SLOF source code provides illustrates what's needed to initialize and boot Linux or a hypervisor on the industry Open Firmware boot standard.
Currently the SLOF source code is hosted on github at https://github.com/aik/SLOF/ and provides:
* Documentation
* Pseudo Open Firmware for prototyping, test, and debug
* Low Level Firmware for IBM's JS20 (closed source)
0da313b7892c1ba405668afba57c660fd56f5b83
429
428
2017-02-13T10:36:02Z
Mark
16
wikitext
text/x-wiki
Slimline Open Firmware (SLOF) is initialization and boot source code based on the IEEE-1275 (Open Firmware) standard, developed by engineers of the IBM Corporation.
The SLOF source code provides illustrates what's needed to initialize and boot Linux or a hypervisor on the industry Open Firmware boot standard.
Currently the SLOF source code is hosted on github at https://github.com/aik/SLOF/ and provides:
* Documentation
* An Open Firmware implementation for prototyping, test, and debug
* Low Level Firmware for IBM's JS20, JS21 and the YDL PowerStation (partially closed source)
* Firmware for the emulated 'pseries' machine of QEMU
b85065b4316493599306b2cdcfd25c815a44e530
Adding words to openbios
0
44
430
406
2017-12-21T16:00:46Z
Programmingkid
15
Update where the c function array is kept
wikitext
text/x-wiki
How to add “words” to the OpenBIOS Dictionary using the C language.
In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word.
The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly.
Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this:
static void dog(void)
{
printk(“bark bark!”);
}
Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully.
Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look:
/* the word names are used to generate the prim words in the
dictionary. This is done by the C written interpreter.
*/
static const char *wordnames[] = {
"(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)",
"(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop",
"2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>",
"r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*",
"mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a",
"and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@",
"w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<",
"sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute",
"here", "here!", "dobranch", "do?branch", "unaligned-w@",
"unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@",
"iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug",
"$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here
};
Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary.
sysdebug, /* sys-debug */
do_include, /* $include */
do_encode_file, /* $encode-file */
do_debug_xt, /* (debug */
do_debug_off, /* (debug-off) */
dog /* dog */ //<-------- insert here
};
Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder:
cd openbios-devel
Set the architure you wish to build openbios for (x86 is used in this example):
./config/scripts/switch-arch x86
Then start building OpenBIOS:
make
Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS.
We run the program like this:
./obj-x86/openbios-unix ./obj-x86/openbios-unix.dict
We should then be greeted by the OpenBIOS Banner:
Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06
Type 'help' for detailed information
[unix] Booting default not supported.
0 >
Type dog at the prompt and see what it says:
0 > dog
bark bark! ok
0 >
Congratulations, you have just taken your first step to improving OpenBIOS.
fc7ea8a5e94fcc72c01df7027215322093d536cb
431
430
2017-12-21T16:34:14Z
Programmingkid
15
wikitext
text/x-wiki
How to add “words” to the OpenBIOS Dictionary using the C language.
In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word.
The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly.
Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this:
static void dog(void)
{
printk(“bark bark!”);
}
Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully.
Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look:
/* the word names are used to generate the prim words in the
dictionary. This is done by the C written interpreter.
*/
static const char *wordnames[] = {
"(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)",
"(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop",
"2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>",
"r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*",
"mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a",
"and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@",
"w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<",
"sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute",
"here", "here!", "dobranch", "do?branch", "unaligned-w@",
"unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@",
"iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug",
"$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here
};
Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary.
sysdebug, /* sys-debug */
do_include, /* $include */
do_encode_file, /* $encode-file */
do_debug_xt, /* (debug */
do_debug_off, /* (debug-off) */
dog /* dog */ //<-------- insert here
};
Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder:
cd openbios-devel
Set the architure you wish to build openbios for (amd64 is used in this example):
./config/scripts/switch-arch amd64
Then start building OpenBIOS:
make
Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS.
We run the program like this:
./obj-amd64/openbios-unix ./obj-amd64/openbios-unix.dict
We should then be greeted by the OpenBIOS Banner:
Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06
Type 'help' for detailed information
[unix] Booting default not supported.
0 >
Type dog at the prompt and see what it says:
0 > dog
bark bark! ok
0 >
Congratulations, you have just taken your first step to improving OpenBIOS.
f0a70febe0cd030dbd55e3425237646e64e4ba50
432
431
2017-12-21T16:35:35Z
Programmingkid
15
wikitext
text/x-wiki
How to add “words” to the OpenBIOS Dictionary using the C language.
In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word.
The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly.
Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this:
static void dog(void)
{
printk(“bark bark!”);
}
Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully.
Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look:
/* the word names are used to generate the prim words in the
dictionary. This is done by the C written interpreter.
*/
static const char *wordnames[] = {
"(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)",
"(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop",
"2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>",
"r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*",
"mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a",
"and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@",
"w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<",
"sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute",
"here", "here!", "dobranch", "do?branch", "unaligned-w@",
"unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@",
"iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug",
"$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here
};
Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary.
sysdebug, /* sys-debug */
do_include, /* $include */
do_encode_file, /* $encode-file */
do_debug_xt, /* (debug */
do_debug_off, /* (debug-off) */
dog /* dog */ //<-------- insert here
};
Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder:
cd openbios-devel
Set the architure you wish to build openbios for (amd64 is used in this example):
./config/scripts/switch-arch amd64
Then start building OpenBIOS:
make build-verbose
Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS.
We run the program like this:
./obj-amd64/openbios-unix ./obj-amd64/openbios-unix.dict
We should then be greeted by the OpenBIOS Banner:
Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06
Type 'help' for detailed information
[unix] Booting default not supported.
0 >
Type dog at the prompt and see what it says:
0 > dog
bark bark! ok
0 >
Congratulations, you have just taken your first step to improving OpenBIOS.
af040a3e03bd7c15c9529d9adc1f9e075733293a
File:Installer.png
6
49
436
2017-12-21T23:43:40Z
Programmingkid
15
AWOS installer
wikitext
text/x-wiki
AWOS installer
81211c3c0a94ce7b7196e131a6c24ef66a91415c
File:Example.png
6
50
438
2017-12-21T23:50:16Z
Programmingkid
15
How to comment out the -Werrors line.
wikitext
text/x-wiki
How to comment out the -Werrors line.
7c31a3db67e98f7482085b5e2993980759b64609
How to build OpenBIOS on Mac OS X
0
48
451
450
2017-12-22T00:19:21Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=$PATH:/usr/local/ppcelfgcc/bin<br>
export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br>
To open this file use these commands:<br>
cd ~<br>
open .bash_profile<br>
Then simply paste the export commands in this file. Save changes when you are done.
<BR><br>
To test to see if the cross compilers work issue these commands:<br>
i386-elf-gcc --version
<br>
ppc-elf-gcc --version
<br>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
c9219df0f75ee2a7f79579a93ac4f0b42b302f22
452
451
2017-12-22T00:19:58Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=$PATH:/usr/local/ppcelfgcc/bin<br>
export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br>
To open this file use these commands:<br>
cd ~<br>
open .bash_profile<br>
Then simply paste the export commands in this file. Save changes when you are done.
<BR><br>
To test to see if the cross compilers work issue these commands:<br>
i386-elf-gcc --version
<br>
ppc-elf-gcc --version
<br><br>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
7410aa87b48299efc682ac08b04447f121d2f630
453
452
2017-12-22T00:21:49Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=$PATH:/usr/local/ppcelfgcc/bin<br>
export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br>
To open this file use these commands:<br>
cd ~<br>
open .bash_profile<br>
Then simply paste the export commands in this file. Save changes when you are done.
<BR><br>
To test to see if the cross compilers work issue these commands:<br>
i386-elf-gcc --version
<br>
ppc-elf-gcc --version
<br><br>
You should see a message like this print:<br>
ppc-elf-gcc (GCC) 4.2.3
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.<br>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
a46cba4f6d24196c1f0e8e881fd5ae4d9271cf2b
454
453
2017-12-22T00:26:39Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=$PATH:/usr/local/ppcelfgcc/bin<br>
export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br>
To open this file use these commands:<br>
cd ~<br>
open .bash_profile<br>
Then simply paste the export commands in this file. Save changes when you are done.
<BR><br>
To test to see if the cross compilers work issue these commands:<br>
i386-elf-gcc --version
<br>
ppc-elf-gcc --version
<br><br>
You should see a message like this print:<br>
ppc-elf-gcc (GCC) 4.2.3
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.<br>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "panic: segmentation violation at …" while building, you probably have this problem.
<br><br>
If this happens to you, try setting the HOSTARCH variable before using the switch-arch script.
<br>
Example:
<br>
HOSTARCH=amd64
<br>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
84e6be0cba9059cd2ed69e182ff46b79e86cd1ac
455
454
2017-12-22T00:27:36Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=$PATH:/usr/local/ppcelfgcc/bin<br>
export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br>
To open this file use these commands:<br>
cd ~<br>
open .bash_profile<br>
Then simply paste the export commands in this file. Save changes when you are done.
<BR><br>
To test to see if the cross compilers work issue these commands:<br>
i386-elf-gcc --version
<br>
ppc-elf-gcc --version
<br><br>
You should see a message like this print:<br>
ppc-elf-gcc (GCC) 4.2.3
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.<br>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "panic: segmentation violation at …" while building, you probably have this problem.
<br><br>
If this happens to you, try setting the HOSTARCH variable before using the switch-arch script.
<br>
Example:
<br>
HOSTARCH=amd64 CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose
<br>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
98e4a5651c5a6101498054786f32458e4c2e24c6
456
455
2017-12-22T00:28:40Z
Programmingkid
15
wikitext
text/x-wiki
<P><BR>
Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR>
</B></FONT><BR>
1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR>
<BR>
2) Expand this bz2 file by double clicking on it.<BR>
<BR>
3) Rename the file AWOS-CC to AWOS-CC.img. <BR>
<BR>
4) Open the image file. <BR>
<BR>
5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR>
<BR>
6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br>
[[File:Installer.png]]
<BR>
<BR>
7) Continue with the installation until it is finished. <BR>
<BR>
8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br>
export PATH=$PATH:/usr/local/ppcelfgcc/bin<br>
export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br>
Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br>
To open this file use these commands:<br>
cd ~<br>
open .bash_profile<br>
Then simply paste the export commands in this file. Save changes when you are done.
<BR><br>
To test to see if the cross compilers work issue these commands:<br>
i386-elf-gcc --version
<br>
ppc-elf-gcc --version
<br><br>
You should see a message like this print:<br>
ppc-elf-gcc (GCC) 4.2.3
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.<br>
This should conclude installing the compiler. <BR>
<BR>
<BR>
<FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR>
</B></FONT><BR>
1) Open the Terminal application.<BR>
<BR>
2) Change the current directory to the inside of the openbios-devel folder. <BR>
<BR>
3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br>
[[File:example.png]]
<br>
<br>
4) Type this command in the terminal and watch the show: <BR>
<BR>
CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose<BR>
<BR>
There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "panic: segmentation violation at …" while building, you probably have this problem.
<br><br>
If this happens to you, try setting the HOSTARCH variable before using the switch-arch script.
<br><br>
Example:
<br><br>
HOSTARCH=amd64 CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc && make build-verbose
<br><br>
To test out your newly created binary in qemu, use the -bios option:<BR>
qemu-system-ppc -bios <path to binary>/openbios-qemu.elf.nostrip<BR>
<BR>
This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P>
3c461bd2d0ad13885c8f4b6fd3b16ae819cd08c5
Adding words to openbios
0
44
457
432
2017-12-27T17:12:16Z
Programmingkid
15
Add PowerPC register access example
wikitext
text/x-wiki
How to add “words” to the OpenBIOS Dictionary using the C language.
In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word.
The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly.
Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this:
static void dog(void)
{
printk(“bark bark!”);
}
Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully.
Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look:
/* the word names are used to generate the prim words in the
dictionary. This is done by the C written interpreter.
*/
static const char *wordnames[] = {
"(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)",
"(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop",
"2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>",
"r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*",
"mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a",
"and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@",
"w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<",
"sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute",
"here", "here!", "dobranch", "do?branch", "unaligned-w@",
"unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@",
"iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug",
"$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here
};
Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary.
sysdebug, /* sys-debug */
do_include, /* $include */
do_encode_file, /* $encode-file */
do_debug_xt, /* (debug */
do_debug_off, /* (debug-off) */
dog /* dog */ //<-------- insert here
};
Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder:
cd openbios-devel
Set the architure you wish to build openbios for (amd64 is used in this example):
./config/scripts/switch-arch amd64
Then start building OpenBIOS:
make build-verbose
Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS.
We run the program like this:
./obj-amd64/openbios-unix ./obj-amd64/openbios-unix.dict
We should then be greeted by the OpenBIOS Banner:
Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06
Type 'help' for detailed information
[unix] Booting default not supported.
0 >
Type dog at the prompt and see what it says:
0 > dog
bark bark! ok
0 >
Congratulations, you have just taken your first step to improving OpenBIOS.
== Advanced example: ==
Suppose you want to make a forth word that would give you access to a PowerPC CPU register. To do this you can use inline assembly language to access the register from C. Then use the bind_func() function to make this C function available to forth.
In this example we implement a word called r3@ that will push the value of register r3 onto the top of the stack.
In the file arch/ppc/qemu/init.c add this code right above the arch_of_init() function:
static void get_r3(void)
{
int value;
asm volatile("mv %0 r3" : "=r"(value));
PUSH(value);
}
Then to make this function available from forth we add this line to the end of the arch_of_init() function in the same file:
bind_func("r3@", get_r3);
To build this example you would have to issue this command:
./config/scripts/switch-arch ppc && make build-verbose
The resulting file can be used with QEMU like this:
qemu-system-ppc -bios <path to openbios folder>/obj-ppc/openbios-qemu.elf.nostrip
10aad5fc6ebc330375e14a815e88f107b2b0a112
458
457
2017-12-27T17:12:47Z
Programmingkid
15
wikitext
text/x-wiki
How to add “words” to the OpenBIOS Dictionary using the C language.
In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word.
The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly.
Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this:
static void dog(void)
{
printk(“bark bark!”);
}
Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully.
Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look:
/* the word names are used to generate the prim words in the
dictionary. This is done by the C written interpreter.
*/
static const char *wordnames[] = {
"(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)",
"(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop",
"2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>",
"r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*",
"mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a",
"and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@",
"w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<",
"sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute",
"here", "here!", "dobranch", "do?branch", "unaligned-w@",
"unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@",
"iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug",
"$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here
};
Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary.
sysdebug, /* sys-debug */
do_include, /* $include */
do_encode_file, /* $encode-file */
do_debug_xt, /* (debug */
do_debug_off, /* (debug-off) */
dog /* dog */ //<-------- insert here
};
Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder:
cd openbios-devel
Set the architure you wish to build openbios for (amd64 is used in this example):
./config/scripts/switch-arch amd64
Then start building OpenBIOS:
make build-verbose
Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS.
We run the program like this:
./obj-amd64/openbios-unix ./obj-amd64/openbios-unix.dict
We should then be greeted by the OpenBIOS Banner:
Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06
Type 'help' for detailed information
[unix] Booting default not supported.
0 >
Type dog at the prompt and see what it says:
0 > dog
bark bark! ok
0 >
Congratulations, you have just taken your first step to improving OpenBIOS.
== Advanced example: ==
Suppose you want to make a forth word that would give you access to a PowerPC CPU register. To do this you can use inline assembly language to access the register from C. Then use the bind_func() function to make this C function available to forth.
In this example we implement a word called r3@ that will push the value of register r3 onto the top of the stack.
In the file arch/ppc/qemu/init.c add this code right above the arch_of_init() function:
static void get_r3(void)
{
int value;
asm volatile("mv %0 r3" : "=r"(value));
PUSH(value);
}
Then to make this function available from forth we add this line to the end of the arch_of_init() function in the same file:
bind_func("r3@", get_r3);
To build this example you would have to issue this command:
./config/scripts/switch-arch ppc && make build-verbose
The resulting file can be used with QEMU like this:
qemu-system-ppc -bios <path to openbios folder>/obj-ppc/openbios-qemu.elf.nostrip
f59bd5ae366a25bcd3de4cba8c39abba4fa7fbb1
459
458
2017-12-27T18:18:33Z
Programmingkid
15
/* Advanced example: */
wikitext
text/x-wiki
How to add “words” to the OpenBIOS Dictionary using the C language.
In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word.
The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly.
Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this:
static void dog(void)
{
printk(“bark bark!”);
}
Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully.
Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look:
/* the word names are used to generate the prim words in the
dictionary. This is done by the C written interpreter.
*/
static const char *wordnames[] = {
"(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)",
"(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop",
"2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>",
"r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*",
"mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a",
"and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@",
"w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<",
"sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute",
"here", "here!", "dobranch", "do?branch", "unaligned-w@",
"unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@",
"iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug",
"$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here
};
Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary.
sysdebug, /* sys-debug */
do_include, /* $include */
do_encode_file, /* $encode-file */
do_debug_xt, /* (debug */
do_debug_off, /* (debug-off) */
dog /* dog */ //<-------- insert here
};
Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder:
cd openbios-devel
Set the architure you wish to build openbios for (amd64 is used in this example):
./config/scripts/switch-arch amd64
Then start building OpenBIOS:
make build-verbose
Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS.
We run the program like this:
./obj-amd64/openbios-unix ./obj-amd64/openbios-unix.dict
We should then be greeted by the OpenBIOS Banner:
Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06
Type 'help' for detailed information
[unix] Booting default not supported.
0 >
Type dog at the prompt and see what it says:
0 > dog
bark bark! ok
0 >
Congratulations, you have just taken your first step to improving OpenBIOS.
== Advanced example: ==
Suppose you want to make a forth word that would give you access to a PowerPC CPU register. To do this you can use inline assembly language to access the register from C. Then use the bind_func() function to make this C function available to forth.
In this example we implement a word called r3@ that will push the value of register r3 onto the top of the stack.
In the file arch/ppc/qemu/init.c add this code right above the arch_of_init() function:
static void get_fpscr(void)
{
asm volatile("mffs 0");
asm volatile("stfd 0, 40(1)");
uint32_t return_value;
asm volatile("lwz %0, 44(1)" : "=r"(return_value));
PUSH(return_value);
}
Then to make this function available from forth we add this line to the end of the arch_of_init() function in the same file:
bind_func("fpscr@", get_fpscr);
To build this example you would have to issue this command:
./config/scripts/switch-arch ppc && make build-verbose
The resulting file can be used with QEMU like this:
qemu-system-ppc -bios <path to openbios folder>/obj-ppc/openbios-qemu.elf.nostrip
Entering fpscr@ in the OpenBIOS prompt would return the value to the fpscr.
3a7958ec826f21eb8b5c301e0a44629d0e632801
460
459
2017-12-27T18:19:37Z
Programmingkid
15
/* Advanced example: */
wikitext
text/x-wiki
How to add “words” to the OpenBIOS Dictionary using the C language.
In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word.
The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly.
Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this:
static void dog(void)
{
printk(“bark bark!”);
}
Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully.
Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look:
/* the word names are used to generate the prim words in the
dictionary. This is done by the C written interpreter.
*/
static const char *wordnames[] = {
"(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)",
"(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop",
"2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>",
"r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*",
"mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a",
"and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@",
"w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<",
"sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute",
"here", "here!", "dobranch", "do?branch", "unaligned-w@",
"unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@",
"iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug",
"$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here
};
Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary.
sysdebug, /* sys-debug */
do_include, /* $include */
do_encode_file, /* $encode-file */
do_debug_xt, /* (debug */
do_debug_off, /* (debug-off) */
dog /* dog */ //<-------- insert here
};
Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder:
cd openbios-devel
Set the architure you wish to build openbios for (amd64 is used in this example):
./config/scripts/switch-arch amd64
Then start building OpenBIOS:
make build-verbose
Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS.
We run the program like this:
./obj-amd64/openbios-unix ./obj-amd64/openbios-unix.dict
We should then be greeted by the OpenBIOS Banner:
Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06
Type 'help' for detailed information
[unix] Booting default not supported.
0 >
Type dog at the prompt and see what it says:
0 > dog
bark bark! ok
0 >
Congratulations, you have just taken your first step to improving OpenBIOS.
== Advanced example: ==
Suppose you want to make a forth word that would give you access to a PowerPC CPU register. To do this you can use inline assembly language to access the register from C. Then use the bind_func() function to make this C function available to forth.
In this example we implement a word called fpscr@ that will push the value of the FPSCR onto the top of the stack.
In the file arch/ppc/qemu/init.c add this code right above the arch_of_init() function:
static void get_fpscr(void)
{
asm volatile("mffs 0");
asm volatile("stfd 0, 40(1)");
uint32_t return_value;
asm volatile("lwz %0, 44(1)" : "=r"(return_value));
PUSH(return_value);
}
Then to make this function available from forth we add this line to the end of the arch_of_init() function in the same file:
bind_func("fpscr@", get_fpscr);
To build this example you would have to issue this command:
./config/scripts/switch-arch ppc && make build-verbose
The resulting file can be used with QEMU like this:
qemu-system-ppc -bios <path to openbios folder>/obj-ppc/openbios-qemu.elf.nostrip
Entering fpscr@ in the OpenBIOS prompt would return the value to the fpscr.
55cd77d9234a286d4e1a3740cf916fdde4b0c9b6
MediaWiki:Sidebar
8
7
461
75
2018-01-18T08:03:08Z
Mark
16
wikitext
text/x-wiki
* About the Project
** mainpage|mainpage
** Contact us|Contact us
** Mailinglist|Mailinglist
** Code of Conduct|Code of Conduct
** Credits|Credits
** Licensing|Licensing
* Implementations
** Open Firmware|Open Firmware
** SmartFirmware|Smart Firmware
** OpenBOOT|OpenBOOT
** OpenBIOS|OpenBIOS
** SLOF|SLOF
* Development
** FCODE suite|FCODE suite
** BeginAgain|Kernel
** FlashRom|Flashing
** https://github.com/openbios/openbios/issues|Issues/Bugs
** Low Level Firmware
* Documentation
** IEEE 1275-1994|Open Firmware
** Bindings|Bindings and Supplements
** Forth/FCode|Forth/FCode
** On the Net|On the Net
* Wiki
** recentchanges-url|recentchanges
131bbb20318fcd40d0b3371b4cfe4ffde1707e0e
User:PatrickGeorgi
2
51
462
2018-01-18T09:40:04Z
PatrickGeorgi
18
Created page with "One of the original authors of the OpenBIOS kernel, then moved to coreboot. Admin of the openbios.org server."
wikitext
text/x-wiki
One of the original authors of the OpenBIOS kernel, then moved to coreboot.
Admin of the openbios.org server.
793a522b7b2d5a9f04337e8959903d02a12ac728
Open Firmware
0
33
463
381
2018-12-09T15:53:48Z
Mark
16
wikitext
text/x-wiki
== Introduction ==
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation (OFW) under a BSD license. This code shares some code with SUN's OpenBOOT implementation. The open source OFW supports x86, PowerPC, and ARM architectures. Other architectures, including SPARC and MIPS, may be added as time and interest dictate.
The x86 version is used on the OLPC "XO" computer. The x86 version can be configured for numerous other environments, including
* Direct QEMU ROM (replacing the "bios.bin" that is supplied with QEMU
* Coreboot payload
* Loadable on directly on top of a conventional PC BIOS (booted from floppy or hard disk like an OS). In this configuration it can run on an arbitrary PC, or on an emulator like QEMU, VirtualBox, or VMWare.
OFW can boot Linux directly from a disk file (FAT, ext2, ISO9660, or jffs2 filesystems) without the need for an intermediate bootloader like LILO or GRUB. The Linux image can be in either ELF format (as created by the first phase of the Linux kernel compilation process) or in the "bzImage" format that "wraps" the ELF image. When booting an ELF image, OFW can read the ELF symbol table so OFW's assembly language debugger can resolve kernel symbols.
OFW can also boot other ELF standalone images, providing to them rudimentary "libc" capability. That facility has been used for booting, for example, Minix, ReactOS, Plan9, Inferno and SqueakNOS. The OLPC system ROM includes several such "standalone client programs", including MicroEMACS, memtest86, and NANDblaster (a facility for fast OS updates over multicast wireless).
On the OLPC system, OFW emulates enough legacy BIOS "real mode INTs" to boot Windows XP. On another system, OFW supports booting Windows CE.
== Download ==
You can [https://github.com/openbios/openfirmware browse the source code online].
The repository is available through git:
You can check it out as follows:
$ git checkout https://github.com/openbios/openfirmware.git
==Building Different Versions==
* Direct QEMU ROM: see [[Building OFW for QEMU]]
* Coreboot: see [[OFW as a Coreboot Payload]]
* OLPC: see [[Building OFW for OLPC]]
* BIOS-loaded: see [[Building OFW to Load from BIOS]]
* ARM: see [[Building OFW for ARM]]
== Mailing List ==
There's an Open Firmware mailing list at:
* http://www.openfirmware.info/mailman/listinfo/openfirmware.
The mailing list archive is also available:
* http://www.openfirmware.info/pipermail/openfirmware/
8c66343faf65b2c5905d0c4a25ef3d059989882d
SmartFirmware
0
31
464
359
2018-12-09T15:56:01Z
Mark
16
wikitext
text/x-wiki
== Introduction ==
In 2006 [http://codegen.com/ CodeGen, Inc] released their Open Firmware implementation under a BSL like license. Their code, entirely written in ANSI C, contains the following components:
* [http://www.codegen.com/SmartFirmware/index.html SmartFirmware™]: an ANSI C implementation of the IEEE-1275 Open Firmware boot firmware standard. Dramatically reduce and ease your firmware development and system bring-up times and costs.
* An [http://www.codegen.com/SmartFirmware/ccfcode.html ANSI C compiler] that generates Open Firmware compatible Forth/Fcode makes it easy to develop drivers for PCI cards and PMC modules.
== Download ==
You can [https://github.com/openbios/smartfirmware browse the code online].
The repository is available through git:
You can check it out as follows:
$ git checkout https://github.com/openbios/smartfirmware.git
__NOEDITSECTION__
95dcb8644dc750bdfdc0e1b6f753f42151428024
OpenBOOT
0
32
465
364
2018-12-09T15:57:42Z
Mark
16
wikitext
text/x-wiki
== Introduction ==
In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor.
== Download ==
You can [https://github.com/openbios/openboot browse the source code online].
The repository is available through git:
You can check it out as follows:
$ git checkout https://github.com/openbios/openboot.git
__NOEDITSECTION__
1b165da285c80c46b81eff71b172ff83141d87a9